Is IBM MQ8 compatible with JBoss EAP 7.0? - ibm-mq

I am getting following error while trying to use the IBM 8.0 all client jar with Jboss 7.0 EAP. So wondering if JBoss EAP 7.0 supports IBM MQ 8 or not.
stack
Exception Details:
Location:
com/ibm/mq/ese/jmqi/ESEJMQI.spiConnect(Ljava/lang/String;Lcom/ibm/mq/jmqi/system/SpiConnectOptions;Lcom/ibm/mq/jmqi/MQCNO;Lcom/ibm/mq/jmqi/handles/Phconn;Lcom/ibm/mq/jmqi/handles/Pint;Lcom/ibm/mq/jmqi/handles/Pint;)V #63: invokespecial
Reason:
Type 'com/ibm/mq/jmqi/system/SpiConnectOptions' (current frame, stack[2]) is not assignable to 'com/ibm/mq/jmqi/system/LpiPrivConnStruct'
Current Frame:
bci: #63
flags: { }
locals: { 'com/ibm/mq/ese/jmqi/ESEJMQI', 'java/lang/String', 'com/ibm/mq/jmqi/system/SpiConnectOptions', 'com/ibm/mq/jmqi/MQCNO', 'com/ibm/mq/jmqi/handles/Phconn', 'com/ibm/mq/jmqi/handles/Pint', 'com/ibm/mq/jmqi/handles/Pint' }
stack: { 'com/ibm/mq/ese/jmqi/ESEJMQI', 'java/lang/String', 'com/ibm/mq/jmqi/system/SpiConnectOptions', 'com/ibm/mq/jmqi/MQCNO', 'com/ibm/mq/jmqi/handles/Phconn', 'com/ibm/mq/jmqi/handles/Pint', 'com/ibm/mq/jmqi/handles/Pint' }
Bytecode:
0x0000000: b200 0399 002b 2a12 0412 5010 06bd 0006
0x0000010: 5903 2b53 5904 2c53 5905 2d53 5906 1904
0x0000020: 5359 0719 0553 5908 1906 53b8 0008 2ab4
0x0000030: 0002 9a00 1f2a 2b2c 2d19 0419 0519 06b7
0x0000040: 0051 b200 0
On the IBM page in Summary section they specifically mentions 7.1 however in Detail section both 7,0 and 7.1
https://www.ibm.com/support/pages/which-are-versions-mq-support-jboss-and-weblogic
Summary -
JBoss EAP 7.1 uses Java EE 7.0: it is supported by MQ 8.0 or later
Details -
1.b.1) JBoss EAP 7.0 and 7.1 support Java EE 7.0.
These versions of JBoss are supported for MQ 8.0 and later.

I noticed that your jar names include 'ese' in them which I don't think is usual.
According to this IBM Support Doc, one cause of this could be that "MQ jars are corrupted, containing some fragments of MQ ESE (extended security edition)."
It suggests uninstalling the MQ jars and reinstalling from a fresh and certain starting point.
If this is not your cause, could you please update your question to show your Extended Security Edition (ESE) setup? Are you attempting to use ESE?

Related

Debezium Oracle Connector "No suitable driver found"

When using Oracle Instant Client 21.7 and using the below json being sent to the Debezium connector, the follow error is generated.
Error message:
Caused by: java.sql.SQLException: No suitable driver found for jdbc:oracle:oci:#//<database-host>:<port>/DB
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:208)
at io.debezium.jdbc.JdbcConnection.lambda$patternBasedFactory$0(JdbcConnection.java:191)
at io.debezium.jdbc.JdbcConnection$ConnectionFactoryDecorator.connect(JdbcConnection.java:128)
at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:882)
at io.debezium.jdbc.JdbcConnection.connection(JdbcConnection.java:877)
at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:630)
at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:504)
at io.debezium.connector.oracle.OracleConnection.resolveOracleDatabaseVersion(OracleConnection.java:141)
... 71 more
openjdk version "1.8.0_332"
OpenJDK Runtime Environment (build 1.8.0_332-b09)
OpenJDK 64-Bit Server VM (build 25.332-b09, mixed mode)
Running a later version of Java, the driver worked, but the connector still throws that error.
I've moved the drivers into the correct location, as mentioned here but still no dice.

Application team getting JMSFMQ6312: An exception occurred in the Java(tm) MQI

We are currently using web-sphere MQ 8.0..4,On linux machine.
Siel application connect to our queue manager with jndi. property and .binding files,earlier application working fine.but application upgraded from version 18 to 19 version also they have upgraded the java version from 1.7 to 1.8,post up gradation, application team facing below error. but we dont see any error in Queue manager logs. error written in application logs.
Application using below upgraded jdk version
D:\>java -version,java version "1.8.0_172",Java(TM) SE Run-time Environment (build 1.8.0_172-b11),Java HotSpot(TM) 64-Bit Server VM (build 25.172-b11, mixed mode)
Application uses MQ to communicate with the external systems. application jndi.property and .binding files
below jar files are related to websphere MQ version 8.0.0.7.
File based (current in config) application team needed the below JAR files, we have given below jar to application team which is related to MQ version 8.0.0.7 to.
a) jms.jar
b) fscontext.jar
c) connector.jar
d) providerutil.jar
e) jta.jar - optional
f) ldap.jar - optional
g) com.ibm.mq.jar (IBM)
h) com.ibm.mqjms.jar (IBM)
i) dhbcore.jar (IBM)- for MQ 7.5
j) com.ibm.mq.commonservices.jar
k) com.ibm.mq.jmqi.jar
l) com.ibm.mq.jms.Nojndi.jar
we have tried to placed the latest MQ client version( MQ client 9.0.0.7) jar files and tried it,but no luck we are facing same issue.
Application team tried placing one JAR at a time.which is available in my queue manager, While they have placed the all the JAR except JMS.Jar application team faced the below error:
ErrorCode = JMS_EXCEPTION
ErrorMessage = Exception: com.ibm.msg.client.jms.DetailedJMSException: JMSFMQ6312: An exception occurred in the Java(tm) MQI.
The Java(tm) MQI has thrown an exception describing the problem.
See the linked exception for further information.; Message: JMSFMQ6312: An exception occurred in the Java(tm) MQI.
StackTrace = com.ibm.msg.client.jms.DetailedJMSException: JMSFMQ6312: An exception occurred in the Java(tm) MQI.
The Java(tm) MQI has thrown an exception describing the problem.
While placed all the Jar files including Jms.jar we get this error:
[SIEL ERROR] Thread[http-nio-8080-exec-13,5,main] [2:36:01.393 PM Tue Jul 23: ] Error:JNdi File
[SIEL ERROR] Thread[http-nio-8080-exec-13,5,main] [2:36:01.393 PM Tue Jul 23: ] Errorjava.lang.NullPointerException
#Josh: We have placed the 4 com.ibm.mq.allclient.jar, jms.jar (most be v2.0), fscontext.jar, and providerutil.jar, jar files post changes we are not getting earlier error( JMSFMQ6312),but now facing different exception in logs,please check below error.
Thread[http-nio-8080-exec-43,5,main] [12:09:06.850 PM Mon Jul 29: ] Receive failed.
[SIEL ERROR] Thread[http-nio-8080-exec-43,5,main] [12:09:06.850 PM Mon Jul 29: ] Exception during Receive:
javax.naming.NameNotFoundException: crmCF
[SIEL ERROR] Thread[http-nio-8080-exec-39,5,main] [12:33:24.911 PM Mon Jul 29: ] Threw SielBusinessServiceException with
ErrorCode = JMS_EXCEPTION
ErrorMessage = Exception: com.ibm.msg.client.jms.DetailedJMSException: JMSWMQ2002: Failed to get a message from destination 'CRM.CUSTOMER.OUT'.
IBM MQ classes for JMS attempted to perform an MQGET; however IBM MQ reported an error.
Use the linked exception to determine the cause of this error.; Message: JMSWMQ2002: Failed to get a message from destination 'CRM.CUSTOMER.OUT'.
StackTrace = com.ibm.msg.client.jms.DetailedJMSException: JMSWMQ2002: Failed to get a message from destination 'CRM.CUSTOMER.OUT'.
IBM MQ classes for JMS attempted to perform an MQGET; however IBM MQ reported an error.
but we can see channel is running fine,no impact on messages transfer, application team wants to know why they are getting this exception.
AMQ8417: Display Channel Status details.
CHANNEL(SIEL.CLIENT) CHLTYPE(SVRCONN)
CONNAME(xxx.xx.xx.xx) CURRENT
STATUS(RUNNING) SUBSTATE(RECEIVE)

Out Of Memory: GC overhead limit exceeded, after jboss upgraded from 6 to 7

We have a legacy application which is build using spring3 and java 7 and it was running on Jboss 6. Recently we have upgraded the jboss server from version 6 to version 7.1.3 with spring version from 3.0 to 4.3.1 and java from Oracle 1.7.0_60-b19 to Open java-1.8.0-openjdk.x86_64 1:1.8.0.191.b12-0.el6_10.
After the upgrade we are started getting error java.lang.OutOfMemoryError: GC overhead limit exceeded.
There is no code change in application and the linux box is same as it was there for Jboss 6.
We have analysed the heap dump shared by the production linux team. we used the JvisualVM and Eclipse Memory analyzer and it is pointing to below two possible leakage susspect.
1. io.undertow.server.session.InMemorySessionManager$SessionImpl
2. org.jboss.vfs.spi.JavaZipFileSystem
Linux team has copied the same configuration from jBoss 6 to jBoss 7. The configuration is -
export JAVA_OPTS="$JAVA_OPTS -Xms4096m -Xmx4096m -XX:MaxPermSize=1024m -Xverify:none -Dorg.jboss.resolver.warning=true -Djboss.modules.system.pkgs=com.sun.crypto.provider -Dsun.rmi.dgc.client.gcInterval=1800000 -Dsun.rmi.dgc.server.gcInterval=1800000 -server -XX:+DoEscapeAnalysis -XX:+UseCompressedOops -XX:+UseParallelGC -XX:+UseParallelOldGC -Dcom.ibm.mq.cfg.useIBMCipherMappings=false -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Stack=true -Dsun.security.ssl.allowUnsafeRenegotiation=true -Dorg.apache.jasper.compiler.Parser.STRICT_WHITESPACE=false -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/logs/EAP/"
Increasing the heap space (young generation, eden storage) is the only option?

FileNet Configuration Manager fails to connect to WebSphere Application Server

I have an issue with FileNet configuration manager connecting to WAS when configuring CPE. Details are below
OS : Windows 10 Enterprise (This is where CPE 5.5 is installed)
WAS : 8.5.5.13
WAS Java : 1.8_64_bundled
FN Config Details
I'm able to login to WAS console and the SOAP port is also correct.
Things that I tried,
adding -Dhttps.protocols="TLSv1,TLSv1.1,TLSv1.2" in configmgr.ini of FileNet configuration manager
Verified SSL configuration on WAS
But noting seems to work. I see below error message on the FileNet configuration manager logs
!ENTRY com.ibm.ecm.configmgr.engine 4 0 2018-06-27 15:45:09.289
!MESSAGE An invalid profile path was specified. C:\IBM\FileNet\ContentEngine\tools\configure\profiles\dotnetclient does not contain any configuration information.
!SESSION 2018-06-27 16:05:40.995 -----------------------------------------------
eclipse.buildId=unknown
java.fullversion=JRE 1.7.0 IBM J9 2.6 Windows 8 x86-32 20170718_357001 (JIT disabled, AOT disabled)
J9VM - R26_Java726_SR10_20170718_1208_B357001
GC - R26_Java726_SR10_20170718_1208_B357001
J9CL - 20170718_357001
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments: gui
Command-line arguments: -os win32 -ws win32 -arch x86 gui
!ENTRY com.ibm.ecm.configmgr.app.ce 4 0 2018-06-27 16:13:56.518
!MESSAGE Connection error: The connection to the application server cannot be established. Ensure the application server is running and that the SOAP connector port and host name are correct.
!STACK 0
com.ibm.ecm.configmgr.engine.ConfigurationManagerException: Connection error: The connection to the application server cannot be established. Ensure the application server is running and that the SOAP connector port and host name are correct.
at com.ibm.ecm.configmgr.engine.jmx.JMXInvoker.invokeConnectMethodAndMethods(JMXInvoker.java:243)
at com.ibm.ecm.configmgr.engine.jmx.JMXInvoker.invokeConnectMethodAndMethod(JMXInvoker.java:142)
at com.ibm.ecm.configmgr.engine.jmx.WebSphereJMXInvoker.connect(WebSphereJMXInvoker.java:86)
at com.ibm.ecm.configmgr.app.ce.applicationserver.WebsphereApplicationServer$TestActivity.testWork(WebsphereApplicationServer.java:371)
at com.ibm.ecm.configmgr.engine.profile.EnvironmentTestActivity.test(EnvironmentTestActivity.java:64)
at com.ibm.ecm.configmgr.ui.wizards.NewProfileWizardPageGetProfileEnvironmentProps$7.widgetSelected(NewProfileWizardPageGetProfileEnvironmentProps.java:604)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:240)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
at org.eclipse.jface.window.Window.open(Window.java:801)
at com.ibm.ecm.configmgr.app.ce.handlers.ProfileNewHandler.execute(ProfileNewHandler.java:67)
at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:829)
at org.eclipse.ui.menus.CommandContributionItem.access$19(CommandContributionItem.java:815)
at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(CommandContributionItem.java:805)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at com.ibm.ecm.configmgr.app.ce.rcp.Application.start(Application.java:86)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)
at java.lang.reflect.Method.invoke(Method.java:620)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Caused by: java.lang.Exception: The connection to the application server cannot be established. Ensure the application server is running and that the SOAP connector port and host name are correct.
at com.ibm.ecm.configmgr.utils.websphere.WebSphereJMXUtil.connect(WebSphereJMXUtil.java:227)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)
at java.lang.reflect.Method.invoke(Method.java:620)
at com.ibm.ecm.configmgr.engine.jmx.JMXInvoker.invokeConnectMethodAndMethods(JMXInvoker.java:191)
... 45 more
*************************telenet response**************************
When did telenet and after a few seconds, I see the below error
HTTP/1.1 408 Request Timeout Content-Type: text/html Content-Length: 117 Connection: close <HTML><TITLE>408 - Request Timeout</TITLE><BODY><h1>408 Connection timed out while reading request</h1></BODY></HTML> Connection to host lost. C:\Windows\system32>
*****************************workaround*****************************
Ok once the profile is created and ran first steps, I disabled global security and restarted websphere. Configuration manager is able to connect to WAS now (looks like issue with security. I verified Quality of protection (QoP) settings
with ssl.client.properties and it was selected as TLSv2. Then I changed it to TSLv1.2 and modified ssl.client.properties also. Still it did not work) I will updated this topic later.
Check default path Webshere.
C:\Program Files\IBM\WebSphere\AppServer
C:\Program Files\IBM\WebSphere\AppServer\profiles\your_profile
VS
C:\Program Files (x86)\IBM\WebSphere\AppServer
C:\Program Files (x86)\IBM\WebSphere\AppServer\profiles\your_profile
The Configuration Manager right now seems to support only older protocols. If you specify TLSv1 in WebSphere console, as opposed to TLSv1.2 for example, Test Connection will work. That will create you another problem though. Newer browsers don't support older protocols and you will not be able to open your WebSphere console in say, Firefox. On Windows, you can use your old but still included IE configured to use these older protocols - Tools -> Internet Options -> Advanced -> Security -> Use * . You'll get your console back that way.

Tomcat 7 with Java 7 JRE_HOME not handling Java 7 beans

I've set-up my Tomcat 7 on Ubuntu 12 with a Java 7 JRE_HOME:
$ /usr/share/tomcat7/bin/version.sh
Using CATALINA_BASE: /usr/share/tomcat7
Using CATALINA_HOME: /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME: /usr/lib/jvm/java-7-openjdk-i386
Using CLASSPATH: /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.26
Server built: Apr 11 2012 12:24:08
Server number: 7.0.26.0
OS Name: Linux
OS Version: 3.2.0-24-generic-pae
Architecture: i386
JVM Version: 1.7.0_03-b147
JVM Vendor: Oracle Corporation
But when deploying a simple JSF application compiled to 1.7 Tomcat complains with
SEVERE: Critical error during deployment:
com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! java.util.concurrent.ExecutionException: java.lang.UnsupportedClassVersionError: com/corejsf/UserBean : Unsupported major.minor version 51.0 (unable to load class com.corejsf.UserBean)
When I change my Ant build.xml to compile to "1.6" the application deploys fine. Is this incompatibility with Java 7 to be expected? There is a 6-months-old related question on Tomcat 7 / Java 7 compatibility but the answers there seem to suggest that Java 7 is supported.
I encountered exactly the same issue.
Here are my steps:
Edit file:
/etc/default/tomcat7
Replace JAVA_HOME
From
JAVA_HOME=/usr/lib/jvm/openjdk-6-jdk
to
JAVA_HOME=/usr/lib/jvm/jdk1.7.0_09
Restart Tomcat.

Resources