Author |
Message
|
Alcedar |
Posted: Thu Sep 18, 2014 1:09 am Post subject: Integration Bus with eXtreme scale (custom evictor) |
|
|
Newbie
Joined: 18 Sep 2014 Posts: 5
|
Hi,
I hope somebody can help me with below problem:
We use IBM Integration Bus v9.0 together with IBM WebSphere eXtreme Scale 8.6 and everything worked fine until we have decided to write a custom evictor which evicts entries from the map based on time and puts them into a message queue.
We have configured objectgrid.xml in the following way:
Code: |
<?xml version="1.0" encoding="UTF-8"?>
<objectGridConfig xmlns:xsi="URL_HERE"
xsi:schemaLocation="URL_HERE"
xmlns="URL_HERE">
<objectGrids>
<objectGrid name="Grid" txTimeout="30">
<backingMap name="Map2" copyMode="COPY_TO_BYTES"
pluginCollectionRef="Eviction" lockStrategy="PESSIMISTIC" nullValuesSupported="false" />
</objectGrid>
</objectGrids>
<backingMapPluginCollections>
<backingMapPluginCollection id="Eviction">
<bean id="Evictor" className="com.session.provider.evictor.TimeoutAsyncEvictor">
</bean>
</backingMapPluginCollection>
</backingMapPluginCollections>
</objectGridConfig> |
However, whenever Integration Bus tries to connect to datagrid (via Configurable service), we get the following exception:
Code: |
[BIPmsgs:7152]BIP7152E: The message flow failed to connect to an external WebSphere eXtreme Scale grid. A client attempted to connect to WebSphere eXtreme Scale grid 'Grid', defined by configurable service 'wxsConnection', using connection string 'localhost:2809'. This connection attempt failed with the following error: 'com.ibm.websphere.objectgrid.config.ObjectGridConfigurationException:[b] CWOBJ2416E: Plug-in com.session.provider.evictor.TimeoutAsyncEvictor could not be instantiated and is not configured. The exception is java.lang.ClassNotFoundException: com.session.provider.evictor.TimeoutAsyncEvictor.'.
[/b] |
Any help will be appreciated!
Tony |
|
Back to top |
|
 |
stoney |
Posted: Thu Sep 18, 2014 3:07 am Post subject: |
|
|
Centurion
Joined: 03 Apr 2013 Posts: 140
|
|
Back to top |
|
 |
Alcedar |
Posted: Thu Sep 18, 2014 7:27 am Post subject: |
|
|
Newbie
Joined: 18 Sep 2014 Posts: 5
|
Thanks a lot stoney!!
That really helped and I went past that error message.
However there is another message coming now:
Code: |
[BIPmsgs:7152]BIP7152E: The message flow failed to connect to an external WebSphere eXtreme Scale grid. A client attempted to connect to WebSphere eXtreme Scale grid 'Grid', defined by configurable service 'wxsConnection', using connection string 'localhost:2809'. This connection attempt failed with the following error:'java.lang.ClassCastException: com.session.provider.evictor.TimeoutAsyncEvictor incompatible with com.ibm.websphere.objectgrid.plugins.Evictor'.
Ensure that the grid is available, and that the connection parameters specified in the configurable service are correct. If the external WebSphere eXtreme Scale grid requires SSL, ensure that this execution group is correctly configured for SSL connections. : Failed to get session with grid |
I think that is because there are two different class loaders for eXtreme Scale and for Integration Bus |
|
Back to top |
|
 |
mqjeff |
Posted: Thu Sep 18, 2014 7:29 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Alcedar wrote: |
I think that is because there are two different class loaders for eXtreme Scale and for Integration Bus |
That's not usually what a ClassCastException means, at least in my experience. |
|
Back to top |
|
 |
Alcedar |
Posted: Thu Sep 18, 2014 8:00 am Post subject: |
|
|
Newbie
Joined: 18 Sep 2014 Posts: 5
|
|
Back to top |
|
 |
mqjeff |
Posted: Thu Sep 18, 2014 8:07 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Well, ok.
You can try putting the jar file with your evictor class in <IIB_install>/cachesupport/lib and restarting, to see if it gets loaded by a different classloader.
But hopefully you've already confirmed using a standalone java XS client app that your evictor is functional and working. |
|
Back to top |
|
 |
Alcedar |
Posted: Thu Sep 18, 2014 8:35 am Post subject: |
|
|
Newbie
Joined: 18 Sep 2014 Posts: 5
|
mqjeff wrote: |
Well, ok.
You can try putting the jar file with your evictor class in <IIB_install>/cachesupport/lib and restarting, to see if it gets loaded by a different classloader.
But hopefully you've already confirmed using a standalone java XS client app that your evictor is functional and working. |
Thanks a lot for your reply!
I have replaced existing <IIB_install>/cachesupport/lib/objectgrid.jar with the one provided by WXS 8.6.0.1 and restarted Integration Node.
Then I re-tested and everything works fine now!!!
Not quite sure though what could be the consequences of JAR replacing? Is it safe?
P.S.: And I have confirmed with Java XS client that Eviction works. |
|
Back to top |
|
 |
|