I am a JiBX newbie and I have been able to follow the examples and have been 
able to get some things ago.  I have read the mailing list, and have tried 
to solve a problem now that I have been working without any success.

Situation is this, I have a class Foo that extends an abstract class which 
contains some object (see classes below).  I created the following mapping 
to deserialize my xml input.  However, when I run this I get an 
IllegalStateException: Stack size mismatch on branch.  The following is the 
output from the compiler (with verbose turned on).  Any help would be 
appreciated.

Thanks,
Lee

Using paths:
.
C:\src\jibx\lib\jibx-bind.jar
C:\src\jibx\lib\bcel.jar
C:\src\jibx\lib\jibx-run.jar
C:\src\jibx\lib\xpp3.jar
C:\src\jibx\lib\stax-api.jar
C:\src\jibx\lib\wstx-asl.jar
Z:\lib\jakarta-commons\commons-lang.jar
.
Using bindings:
C:\JibxTest\status.xml
Running binding compiler version jibx_1_2_SNAPSHOT
binding status:
context (mp#=2) (cv#=1) (fm#=0)
mapping class a.b.AbstractMessage (#0) (abstract)
  context (cv#=0) (fm#=0)
  object binding for a.b.AbstractMessage create class a.b.AbstractMessage
   structure ordered
    element wrapper CommonInfo
     component property header (Header)
      object binding for a.b.Header create class a.b.Header
       structure ordered
        element TransactionID from property transactionId (long)
mapping class a.b.c.Foo to element <myXML> (#1)
  context (cv#=0) (fm#=0)
  element wrapper myXML
   object binding for a.b.c.Foo create class a.b.c.Foo
    structure unordered, flexible
     mapping reference to a.b.AbstractMessage using property "this" 
(a.b.c.Foo)
Generating code for mapping a.b.AbstractMessage
Generating code for mapping a.b.c.Foo
Error running binding compiler

*** Error during code generation - please enter a bug report for this error 
in Jira if the problem is not listed as fixed on the online stat
us page ***

java.lang.IllegalStateException: Stack size mismatch on branch
in method a.b.c.Foo.JiBX_status_unmarshal
generated by [EMAIL PROTECTED]
from stack:
0: a.b.c.Foo
1: a.b.c.Foo
2: a.b.AbstractMessage
to stack:
0: a.b.c.Foo
1: a.b.c.Foo

       at 
org.jibx.binding.classes.BranchWrapper.setTarget(BranchWrapper.java:183)
       at 
org.jibx.binding.classes.BranchWrapper.setTarget(BranchWrapper.java:200)
       at 
org.jibx.binding.def.NestedStructure.genContentUnmarshal(NestedStructure.java:257)
       at 
org.jibx.binding.def.ObjectBinding.genUnmarshalContentCall(ObjectBinding.java:795)
       at 
org.jibx.binding.def.ObjectBinding.genContentUnmarshal(ObjectBinding.java:940)
       at 
org.jibx.binding.def.ElementWrapper.genContentUnmarshal(ElementWrapper.java:315)
       at 
org.jibx.binding.def.MappingDefinition.generateCode(MappingDefinition.java:582)
       at 
org.jibx.binding.def.DefinitionContext.generateCode(DefinitionContext.java:603)
       at 
org.jibx.binding.def.BindingDefinition.generateCode(BindingDefinition.java:661)
       at org.jibx.binding.Compile.compile(Compile.java:305)
       at org.jibx.binding.Compile.main(Compile.java:385)


-------------------BINDING FILE 
-----------------------------------------------------
<binding>
<mapping class="a.b.AbstractMessage" abstract="true">
<structure name="CommonInfo" field="header">
<value name="TransactionID" field="transactionId"/>
</structure>
</mapping>

<mapping name="myXML" class="a.b.c.Foo" ordered="false" flexible="true" 
extends="a.b.AbstractMessage">
<structure map-as="a.b.AbstractMessage"/>
</mapping>
</binding>

------------CLASSES ---------------------------

package a.b;
public abstract class AbstractMessage {
private Header header;
}

---------------------------------------

package a.b.c;
public class Foo extends AbstractMessage {

}

----------------------------------------
public class Header {
int transactionId;
}

-----------INPUT XML -----------------------------

<myXML>
<CommonInfo>
<TransactionID>123</TransactionID>
</CommonInfo>
<Health>
...
</Health>
</myXML>




-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
jibx-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jibx-users

Reply via email to