Skip to Main Content

Integration

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Class Not Found: com.bea.wlevs.adapters.jms.api.OutboundMessageConverter in Outbound JMS Converter

Lucas JellemaSep 15 2014 — edited Sep 15 2014

OEP 12.1.3

Following the instructions in 4 Adapters (12c Release 1 (12.1.3)) I have created a custom message converter bean for my Outbound JMS Adapter (I had to add the JAR file com.bea.wlevs.adapters.jms_12.1.3.0_0.jar from OEP_HOME\oep\modules to my project to make the code compile). However, upon deployment, I ran into a class not found exception:

<Sep 15, 2014 7:17:19 PM CEST> <Error> <org.springframework.osgi.extender.internal.activator.ContextLoaderListener> <BEA-000000> <Application context refresh failed (OsgiBundleXmlApplicationContext(bundle=CreditCardTheftDetection.AirportCreditCardTransactionProcessing, config=osgibundle:/META-INF/spring/*.xml))

java.lang.NoClassDefFoundError: saibot.airport.security.prevention.jms.SuspectedCreditCardEventConverter not found from bundle [CreditCardTheftDetection.AirportCreditCardTransactionProcessing (CreditCardTheftDetection.AirportCreditCardTransactionProcessing)]

    at org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:112)

    at org.springframework.osgi.util.BundleDelegatingClassLoader.loadClass(BundleDelegatingClassLoader.java:156)

    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

    at java.lang.Class.forName0(Native Method)

    at java.lang.Class.forName(Class.java:270)

Caused By: java.lang.NoClassDefFoundError: com/bea/wlevs/adapters/jms/api/OutboundMessageConverter

    at java.lang.ClassLoader.defineClass1(Native Method)

    at java.lang.ClassLoader.defineClass(ClassLoader.java:800)

    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)

Caused By: java.lang.ClassNotFoundException: com.bea.wlevs.adapters.jms.api.OutboundMessageConverter

    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)

    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)

    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)

    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)

I have tried adding the JAR file (com.bea.wlevs.adapters.jms_12.1.3.0_0.jar) to my deployment JAR. That did not make any difference.


Does anyone know why this class OutboundMessageConverter is not found - and more importantly: what I can do to make it available in the run time?


thanks.


Lucas

This post has been answered by User757087-Oracle on Sep 15 2014
Jump to Answer

Comments

User757087-Oracle
Answer

To make a package available to your application at runtime for OEP, you will need to add it to the application's MANIFEST.MF file to the Import Package section (since the OEP server is OSGi-based). There's no need to supply a version number, you can just enter the package name (e.g.)

com.bea.wlevs.adapters.jms.api,

Marked as Answer by Lucas Jellema · Sep 27 2020
Lucas Jellema

Thanks for the quick and accurate reply.

I have added two bundles to the manifest.mf file:

com.bea.wlevs.adapters.jms.api;version="12.1.3",

javax.jms,

and now the application indeed deploys successfully. Very valuable to me - thanks again.

Lucas

1 - 2
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Oct 13 2014
Added on Sep 15 2014
2 comments
1,214 views