You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Lucas Theisen <lt...@us.ibm.com> on 2007/02/02 01:51:44 UTC
Re: Broken StAXOMBuilder
Dims,
After fixing the previous issue we ran into one more. It turns out that
our test case was creating a more complete xml to start from than the
generated code (the generated code is not setting the prefix initially
where as if you call .parse and pass in a string it did) so they
resulted in hitting different cases in the code. So we wrote another
patch for the second issue we ran into. We wrote it up and attached it
to the previous issue WSCOMMONS-160, and reopened the issue. Hopefully
you can add this one to the source tree as well. Now our generated
client can communicate with our service :-).
Thank you for all your help,
Lucas
Lucas J Theisen wrote:
> Dims,
>
> I looked into this issue myself, and fixed the source code. It is
> actually in the axiom package. It is a problem with OMSerializerUtil. I
> added the svn patch file to the ticket I created in JIRA. You can
> review it and hopefully add it to your source tree. For now I will have
> to use the copy I edited.
>
> Thank you,
> Lucas
>
> Lucas J Theisen wrote:
>> Dims,
>>
>> AXIS2-2068 was created with a small code example that demonstrates
>> this issue. I appreciate your help with this issue.
>>
>> Thanks,
>> Lucas
>>
>> Davanum Srinivas wrote:
>>> Lucas,
>>>
>>> Please create a JIRA issue and upload a complete test that can be used
>>> to diagnose/fix the problem. That will help speed things up.
>>>
>>> thanks,
>>> dims
>>>
>>> On 1/30/07, Lucas Theisen <lt...@us.ibm.com> wrote:
>>>> Hi,
>>>>
>>>> I have been debugging some code that was generated by the Axis2 code
>>>> generator. The code appears to be working except that the namespace
>>>> settings for the attributes are getting stripped off by the
>>>> StAXOMBuilder. Here is what I have done to narrow this down. I added
>>>> some print statements to the generated toOM method of the
>>>> ServiceStub class:
>>>>
>>>> private org.apache.axiom.om.OMElement toOM(
>>>>
>>>> com.ibm.specializedsolutions.onecontact.generated.SendMessagesDocument
>>>> param,
>>>> boolean optimizeContent ) {
>>>>
>>>> System.out.println( "before - '" + param.toString( ) + "'" );
>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder builder = new
>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder(
>>>> org.apache.axiom.om.OMAbstractFactory.getOMFactory( ),
>>>> new org.apache.axis2.util.StreamWrapper( param
>>>> .newXMLStreamReader( ) ) );
>>>> org.apache.axiom.om.OMElement documentElement = builder
>>>> .getDocumentElement( );
>>>>
>>>> ((org.apache.axiom.om.impl.OMNodeEx)
>>>> documentElement).setParent( null );
>>>> System.out.println( "after - '" + documentElement.toString( ) + "'" );
>>>> return documentElement;
>>>> }
>>>>
>>>> The two print statements give this output:
>>>>
>>>> before - '<sendMessages
>>>> xmlns="http://specializedsolutions.boulder.ibm.com/pagerapi">
>>>> <client pag:id="foo"
>>>> xmlns:pag="http://specializedsolutions.boulder.ibm.com/pagerapi"/>
>>>> <transaction>
>>>> <message>
>>>> <content pag:type="text/plain"
>>>> xmlns:pag="http://specializedsolutions.boulder.ibm.com/pagerapi">Test
>>>> message</content>
>>>> <from>ltheisen@us.ibm.com</from>
>>>> <subject>URGENT: Testing</subject>
>>>> <recipients>
>>>> <profileRecipient pag:id="100000"
>>>> xmlns:pag="http://specializedsolutions.boulder.ibm.com/pagerapi"/>
>>>> </recipients>
>>>> </message>
>>>> </transaction>
>>>> </sendMessages>'
>>>> after - '<sendMessages
>>>> xmlns="http://specializedsolutions.boulder.ibm.com/pagerapi"><client
>>>> xmlns:axis2ns1="http://specializedsolutions.boulder.ibm.com/pagerapi"
>>>> id="foo" /><transaction><message><content
>>>> xmlns:axis2ns2="http://specializedsolutions.boulder.ibm.com/pagerapi"
>>>> type="text/plain">Test
>>>> message</content><from>ltheisen@us.ibm.com</from><subject>URGENT:
>>>> Testing</subject><recipients><profileRecipient
>>>> xmlns:axis2ns3="http://specializedsolutions.boulder.ibm.com/pagerapi"
>>>> id="100000" /></recipients></message></transaction></sendMessages>'
>>>>
>>>> As you can see from this output, the xml initially had the "pag:"
>>>> namespace qualification on the attributes, but after running through
>>>> the
>>>> StAXOMBuilder, the namespace settings are missing. Also, there are
>>>> additional namespace definitions that are never used. Please help.
>>>>
>>>> Thank you,
>>>> Lucas
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>>>> For additional commands, e-mail: axis-user-help@ws.apache.org
>>>>
>>>>
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
>> For additional commands, e-mail: axis-user-help@ws.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org