[ 
https://issues.apache.org/jira/browse/AXIS2-2578?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12493343
 ] 

Amila Chinthaka Suriarachchi commented on AXIS2-2578:
-----------------------------------------------------

this is a issue with the xml beans

the parameterDependencies element in the returned xmlbean document like this
                      <parameterDependencies>
                            <name>primitive0</name>
                            <signalDependencies>
                                <name>signal0</name>
                            </signalDependencies>
                            <signalDependencies>
                                <name>signal1</name>
                            </signalDependencies>
                            <type>primitiveType0</type>
                            <units>units0</units>
                            <max>2</max>
                            <min>1</min>
                        </parameterDependencies>

here the parameterDependencies element is a parameter type but you actually 
sends the primitiveParameter type. In this case it has to specify the actualy 
type used.

See the return value from adb server.

<parameterDependencies xsi:type=":PrimitiveParameter">
                        <name>primitive0</name>
                        <signalDependencies>
                           <name>signal0</name>
                        </signalDependencies>
                        <signalDependencies>
                           <name>signal1</name>
                        </signalDependencies>
                        <type>primitiveType0</type>
                        <units>units0</units>
                        <max>2</max>
                        <min>1</min>
                     </parameterDependencies>

it specify the actuall type and this can be used to retrieve the correct value 
at the client side.
(ADB also has a problem with printing a : when namespace prefix is null, but 
this works with the adb client fine) 

So it seems to be an xmlbeans problem. 
in your generated xmlbeans Document you have
GetDetailedMonitoringStagesResponseDocument class and it has two methods called 
save and Factory.parse. 
So can you try to save your object structure with the save method and reparse 
with the Factor.parse method and check the second object structure with the 
first .
See whether the polymorphism has worked correctly.

if not please report this bug to xmlbeans. you can generate databinding objects 
directly with the xmlbeans using the scomp command.

> Problems with ADB Client and XMLBeans Service
> ---------------------------------------------
>
>                 Key: AXIS2-2578
>                 URL: https://issues.apache.org/jira/browse/AXIS2-2578
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.1.1
>         Environment: Windows XP SP2, Java 1.5.0-11, Eclipse Codegenerator 
> plugin 1.2.1
>            Reporter: Jorge Fernández
>         Assigned To: Amila Chinthaka Suriarachchi
>         Attachments: API.wsdl, APISkeleton.java, APISkeletonXmlBeans.java, 
> Client.java, ClientXmlBeans.java
>
>
> This JIRA is related with the message from the mailing list "Issue with ADB 
> and parsing a response message (namespaces)"
> I couldn't reproduce the problem I described in that email but when I fixed 
> that problem I found another one and this is which I'm reporting.
> First, some introduction.
> In my response message there is an array of  Stages which have one or more 
> Configurations. Each Configuration has AbstractParameters and 
> PrimitiveParameters (that inherit from Parameter). Also each Parameter may 
> depend on other so the class Parameter has an array of Parameter called 
> dependencies.
> My problem happens only if I have ADB at client side and XMLBeans at service 
> side. Any other combination works perfectly. (I attach the wsdl and client 
> and service for both databindings).
> When my ADB client parses the response message, it enters Stage.Factory.parse 
> method, then it enters, Configuration.Factory.parse method. Next, 
> AbstractParameter.Factory.parse method (because the first parameter is 
> abstract) and later it want to parse the dependencies of this parameter so it 
> enters Parameter.Factory.parse method. Here, there is a PrimitiveParameter 
> with no dependencies on oher parameters so it enters Signal.Factory.parse 
> method for getting signal dependencies. It returns ok
> Finally, the problem comes out when after getting SignalDependencies from 
> this PrimitiveParameter, it gets the Type element which is in the Parameter 
> class and now there is the gain element that is part of PrimitiveParameter 
> and not of his parent. so it throws an exception because it didn't expect it.
> Hope this explanation could be useful but if not, the wsdl could be.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to