At our company, we have an application that uses the RFA library (java version) to make connections/request to the TREP system. We upgraded our java version (from version 8 to version 11) on the server containing our application and now it's giving an error. After checking with the team from the TREP system, they say that they do not receive any connection attempts/requests from our application since we upgraded to java v11. On our side, I have noticed that our application tries to make the connection but times out.
Our first attempt to fix this error was to upgrade the RFA library we were using (which was version 8.1.0) to version 8.2.2. After reading the documentation I saw that JDK 11 is supported by RFA Java 8.1.3 and above. This did not fix the error. There was no effect at all on the connection and at the TREP system, they are still not receiving any connection attempts/requests from our application.
When we reverted back our upgrade from java version 11, back to version 8. It was working again.
My second attempt to figure out a solution to this problem is to test RFA connectivity to the TREP system itself, with the example files. Together with the RFA java documentation, I also see a QuickStart folder with example files you can run to the test RFA connectivity. Here I am also getting an error. I am following the RFAJ_QuickStartGuide.pdf, Unfortunately I cannot attach this file with this question, since it's too big and for security reasons I cannot use external link right now to compress the file to a smaller size.
Following this pdf instructions also not working for me. I am getting some errors and I would like your help with the running of these example files to the TREP system.
I first had to ran the config_editor.bat file, which I did. I did receive tho some warnings. Maybe this is not really important, but I thought I would share this anyways (please see below for the details):
snip logs:
mei 05, 2022 2:27:04 A.M. java.util.prefs.WindowsPreferences <init>
WARNING: Could not create windows registry node Software\JavaSoft\Prefs\_dummy/Node at root 0xffffffff80000002. Windows RegCreateKeyEx(...) returned error code 5.
mei 05, 2022 2:27:04 A.M. java.util.prefs.WindowsPreferences WindowsRegOpenKey1
WARNING: Trying to recreate Windows registry node Software\JavaSoft\Prefs\_dummy/Node at root 0xffffffff80000002.
mei 05, 2022 2:27:04 A.M. java.util.prefs.WindowsPreferences openKey
WARNING: Could not open windows registry node Software\JavaSoft\Prefs\_dummy/Node at root 0xffffffff80000002. Windows RegOpenKey(...) returned error code 2.
mei 05, 2022 2:27:04 A.M. java.util.prefs.WindowsPreferences WindowsRegOpenKey1
WARNING: Trying to recreate Windows registry node Software\JavaSoft\Prefs\_dummy/Node at root 0xffffffff80000002.
mei 05, 2022 2:27:04 A.M. java.util.prefs.WindowsPreferences openKey
WARNING: Could not open windows registry node Software\JavaSoft\Prefs\_dummy/Node at root 0xffffffff80000002. Windows RegOpenKey(...) returned error code 2.
java.prefs/java.util.prefs.WindowsPreferences.childrenNamesSpi(WindowsPreferences.java:786)
java.prefs/java.util.prefs.AbstractPreferences.removeNode2(AbstractPreferences.java:1004)
After that I had to import the quickstart.xml file. I also did this no errors. (see attached file called import xml file.PNG)
Then I ran the QuickStartProvider.bat file, no errors. (please see attached file called Run QuickStartProvider_bat file.PNG).
Then I ran the QuickStartConsumer.bat file, this time with errors. (please see below for detailed logs). I tried running the consumer also after importing the quickstart xml with the node configurations our application is using, but also the same error. On my local system I have java jdk 11.
Snip error:
*****************************************************************************
* Begin Quck Start Consumer Demo Program *
*****************************************************************************
field dictionary read from RDMFieldDictionary file
enum dictionary read from enumtype.def file
LoginClient: Sending login request
LoginClient.processEvent: Received Login Response
LoginClient: Received Login Response - MsgType.REFRESH_RESP
MESSAGE
Msg Type: MsgType.REFRESH_RESP
Msg Model Type: LOGIN
Indication Flags: REFRESH_COMPLETE
Hint Flags: HAS_ATTRIB_INFO | HAS_ITEM_GROUP | HAS_RESP_TYPE_NUM | HAS_STATE
State: OPEN, SUSPECT, NONE, "All connections pending"
Group: 0000
RespTypeNum: 0 (RespType.SOLICITED)
AttribInfo
Name: C86476
NameType: 1 (USER_NAME)
Attrib
ELEMENT_LIST
ELEMENT_ENTRY ApplicationId: 256
ELEMENT_ENTRY Position: 192.168.2.5/NLLH4000557628
ELEMENT_ENTRY AllowSuspectData: 1
ELEMENT_ENTRY SingleOpen: 1
ELEMENT_ENTRY SupportBatchRequests: 7
ELEMENT_ENTRY SupportOptimizedPauseResume: 1
ELEMENT_ENTRY SupportPauseResume: 1
ELEMENT_ENTRY SupportViewRequests: 1
ELEMENT_ENTRY SupportEnhancedSymbolList: 1
ELEMENT_ENTRY SupportOMMPost: 1
Payload: None
Exception in thread "myNamespace::consSession Session EventQueueGroup" java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
at com.reuters.rfa.internal.connection.rssl.RSSLConnection.readConfigurationImpl(Unknown Source)
at com.reuters.rfa.internal.connection.ConnectionImpl.readConfiguration(Unknown Source)
at com.reuters.rfa.internal.connection.ConnectionImpl.init(Unknown Source)
at com.reuters.rfa.internal.connection.ConnectionManager.createConnection(Unknown Source)
at com.reuters.rfa.internal.connection.ConnectionManager.acquire(Unknown Source)
at com.reuters.rfa.internal.session.ConnectionHandler.createConnections(Unknown Source)
at com.reuters.rfa.internal.session.omm.OMMUserESHContext.initializeLoginConnectionHandler(Unknown Source)
at com.reuters.rfa.internal.session.omm.OMMInteractiveLoginMsgProcessor.processLoginReqMsg(Unknown Source)
at com.reuters.rfa.internal.session.ommc.OMMConsumerEventSourceHandler.processRequestMessage(Unknown Source)
at com.reuters.rfa.internal.common.RequestMessage.dispatch(Unknown Source)
at com.reuters.rfa.internal.common.EventQueueImpl.dispatchFromGroup(Unknown Source)
at com.reuters.rfa.internal.common.EventQueueGroupImpl.dispatchFromList(Unknown Source)
at com.reuters.rfa.internal.common.EventQueueGroupImpl.dispatchLowHighNormal(Unknown Source)
at com.reuters.rfa.internal.common.EventQueueGroupImpl.dispatchABACAB(Unknown Source)
at com.reuters.rfa.internal.common.EventQueueGroupImpl.dispatch(Unknown Source)
at com.reuters.rfa.internal.common.EventQueueMLThread.dispatch(Unknown Source)
at com.reuters.mainloop.channel.ChannelNotificationPipe.dispatchAll(Unknown Source)
at com.reuters.mainloop.channel.ChannelNotificationPipe.readSelected(Unknown Source)
at com.reuters.mainloop.channel.ChannelMainLoop.processSelection(Unknown Source)
at com.reuters.mainloop.channel.ChannelMainLoop.selectFor(Unknown Source)
at com.reuters.mainloop.channel.ChannelMainLoop.run(Unknown Source)
at com.reuters.rfa.internal.common.EventQueueMLThread.runImpl(Unknown Source)
at com.reuters.rfa.internal.common.InterruptibleThread.run(Unknown Source)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 24 more
Does anyone knows why this is happening and how to fix this?
Also why I am not able to run RFA library java version 8.2.2 successfully on jdk version 11?
import xml file.PNG
Run QuickStartProvider_bat file.PNG