|
From: <sco...@jb...> - 2006-07-06 14:41:39
|
The location of the ObjectModelFactorySimpleSubDeployerSupport call that is failing is:
| Caused by: java.lang.NoSuchMethodError: org.jboss.xb.binding.Unmarshaller.unmars
| hal(Ljava/lang/String;Lorg/jboss/xb/binding/ObjectModelFactory;Lorg/jboss/xb/bin
| ding/metadata/unmarshalling/DocumentBinding;)Ljava/lang/Object;
| at org.jboss.deployment.ObjectModelFactorySimpleSubDeployerSupport.parse
| MetaData(ObjectModelFactorySimpleSubDeployerSupport.java:52)
| ... 68 more
|
The parse of the conf/login-config.xml is also failing. The previous 1.0.0.CR4 version had the following methods:
| public abstract java.lang.Object unmarshal(java.lang.String, org.jboss.xb.binding.ObjectModelFactory, org.jboss.xb.binding.metadata.unmarshalling.DocumentBinding) throws org.jboss.xb.binding.JBossXBException;
|
| public abstract java.lang.Object unmarshal(java.lang.String, org.jboss.xb.binding.ObjectModelFactory, java.lang.Object) throws org.jboss.xb.binding.JBossXBException;
|
|
It would seem that call like unmarshaller.unmarshal(url.toString(), factory, null) should not even be compiling as its ambiguous. Obviously its binding to the DocumentBinding variation as can be seen via javap -c:
| [starksm@banshee9100 lib]$ javap -classpath 'jboss-jmx.jar;jboss-system.jar' -c
| org.jboss.deployment.ObjectModelFactorySimpleSubDeployerSupport
| Compiled from "ObjectModelFactorySimpleSubDeployerSupport.java"
| public abstract class org.jboss.deployment.ObjectModelFactorySimpleSubDeployerSupport extends org.jboss.deployment.SimpleSubDeployerSupport{
| ...
|
| protected void parseMetaData(org.jboss.deployment.DeploymentInfo, java.net.URL)
| throws org.jboss.deployment.DeploymentException;
| Code:
| 0: invokestatic #2; //Method org/jboss/xb/binding/UnmarshallerFactory.newInstance:()Lorg/jboss/xb/binding/UnmarshallerFactory;
| 3: invokevirtual #3; //Method org/jboss/xb/binding/UnmarshallerFactory.newUnmarshaller:()Lorg/jboss/xb/binding/Unmarshaller;
| 6: astore_3
| 7: aload_0
| 8: invokevirtual #4; //Method getObjectModelFactory:()Lorg/jboss/xb/binding/ObjectModelFactory;
| 11: astore 4
| 13: aload_1
| 14: aload_3
| 15: aload_2
| 16: invokevirtual #5; //Method java/net/URL.toString:()Ljava/lang/String;
| 19: aload 4
| 21: aconst_null
| 22: invokeinterface #6, 4; //InterfaceMethod org/jboss/xb/binding/Unmarshal
| ler.unmarshal:(Ljava/lang/String;Lorg/jboss/xb/binding/ObjectModelFactory;Lorg/jboss/xb/binding/metadata/unmarshalling/DocumentBinding;)Ljava/lang/Object;
| 27: putfield #7; //Field org/jboss/deployment/DeploymentInfo.metaData:Ljava/lang/Object;
| 30: goto 57
| 33: astore_3
| 34: new #9; //class java/lang/StringBuffer
| 37: dup
| 38: invokespecial #10; //Method java/lang/StringBuffer."<init>":()V
| 41: ldc #11; //String Error parsing meta data
| 43: invokevirtual #12; //Method java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
| 46: aload_2
| 47: invokevirtual #13; //Method java/lang/StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
| 50: invokevirtual #14; //Method java/lang/StringBuffer.toString:()Ljava/lang/String;
| 53: aload_3
| 54: invokestatic #15; //Method org/jboss/deployment/DeploymentException.rethrowAsDeploymentException:(Ljava/lang/String;Ljava/lang/Throwable;)V
| 57: return
| Exception table:
| from to target type
| 0 30 33 Class java/lang/Throwable
|
|
| }
|
Without going through the language spec I can't say why this should have failed to compile, but the best solution would seem to be a patch to the jboss-system.jar that made the call to the unmarshal(java.lang.String, org.jboss.xb.binding.ObjectModelFactory, java.lang.Object) variation explicit. This way either jbossxb version could be used. Until I see why the conf/login-config.xml is failing to parse I don't know if that is a sufficient path. Most likely a patch to the jbossx.jar will also be required.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3955875#3955875
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3955875
|