Hi,
      Another blocker while migrating from CXF 2.3 to 2.4.2. We are starting 
JAX-WS and REST end point from a bundle which runs in OSGi container. I have 
all CXF jars that come with 2.4.2 distribution including wss4j-1.6.2.jar. 
Though Merlin is in classpath, the following exception is coming.

I have read in CXF forums that this exception generally comes if conflicting 
versions of WSS4J jar in classpath. But, in our case there is no such 
possibility.


Do you have any suggestion?

Caused by: org.apache.ws.security.WSSecurityException: 
org.apache.ws.security.components.crypto.Merlin
                                Not Found
                at 
org.apache.ws.security.components.crypto.CryptoFactory.getInstance(CryptoFactory.java:114)[77:
 sample.qualifier]
                at 
org.apache.ws.security.components.crypto.CryptoFactory.getInstance(CryptoFactory.java:78)[77:
 sample.qualifier]
                at 
org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilder.getCrypto(AbstractBindingBuilder.java:1332)[77:
 sample.qualifier]
                at 
org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilder.getSignatureCrypto(AbstractBindingBuilder.java:1258)[77:
 sample.qualifier]
                at 
org.apache.cxf.ws.security.wss4j.policyhandlers.AbstractBindingBuilder.getSignatureBuilder(AbstractBindingBuilder.java:1569)[77:
 sample.qualifier]
                at 
org.apache.cxf.ws.security.wss4j.policyhandlers.AsymmetricBindingHandler.doSignature(AsymmetricBindingHandler.java:462)[77:
 sample.qualifier]
                at 
org.apache.cxf.ws.security.wss4j.policyhandlers.AsymmetricBindingHandler.doSignBeforeEncrypt(AsymmetricBindingHandler.java:133)[77:
 sample.qualifier]
                ... 14 more
Caused by: java.lang.ClassNotFoundException: 
org.apache.ws.security.components.crypto.Merlin

                at 
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)[osgi-3.6.2.R36x_v20110210.jar:]
                at 
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)[osgi-3.6.2.R36x_v20110210.jar:]
                at 
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)[osgi-3.6.2.R36x_v20110210.jar:]
                at 
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)[osgi-3.6.2.R36x_v20110210.jar:]
                at 
java.lang.ClassLoader.loadClass(ClassLoader.java:251)[:1.6.0_05]
                at 
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)[:1.6.0_05]
                at java.lang.Class.forName0(Native Method)[:1.6.0_05]
                at java.lang.Class.forName(Class.java:169)[:1.6.0_05]
                at 
org.apache.ws.security.util.Loader.loadClass(Loader.java:243)[77:sample.qualifier]
                at 
org.apache.ws.security.util.Loader.loadClass(Loader.java:221)[77: 
sample.qualifier]
                at 
org.apache.ws.security.util.Loader.loadClass(Loader.java:215)[77: 
sample.qualifier]
                at 
org.apache.ws.security.components.crypto.CryptoFactory.getInstance(CryptoFactory.java:109)[77:
 sample.qualifier]
                ... 20 more

Thanks & Regards
Raman

Reply via email to