[
https://issues.apache.org/jira/browse/AXIS2-2564?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Eugeniy Nizhinskiy updated AXIS2-2564:
--------------------------------------
Description:
1. Wrong java2wsdl mapping occurs when try to use java.lang.Long types in web
service.
java.lang.Long mappes to long instead of nilable long.
2. Problem with complex types. If we use long (not java.lang.Long) as in/out
parameter in web service methods java2wsdl mappes it as nilable. But if we use
in/out complex type with long field we will get not nilable in wsdl.
Example:
>From the following classes java2wsdl generates wrong WSDL.
[BatchManagerService.java]
package x4444;
public class BatchManagerService {
public x4444.Person getPerson(java.lang.Long personINTN)
{
return null;
};
public x4444.Person getPersonSimple(long personSIMPLEINTN)
{
return null;
};
}
[Person.java]
package x4444;
public class Person {
public java.lang.Long getLong(){return null;};
public long getSimpleLong(){return 0;};
}
<xs:element name="getPerson">
<xs:complexType>
<xs:sequence>
<xs:element name="personINTN" nillable="true" type="xs:long" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getPersonResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="return" nillable="true" type="ns:Person" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Person" type="ns:Person" />
<xs:complexType name="Person">
<xs:sequence>
<xs:element name="long" type="xs:long" />
<xs:element name="simpleLong" type="xs:long" />
</xs:sequence>
</xs:complexType>
<xs:element name="getPersonSimple">
<xs:complexType>
<xs:sequence>
<xs:element name="personSIMPLEINTN" nillable="true" type="xs:long" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getPersonSimpleResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="return" nillable="true" type="ns:Person" />
</xs:sequence>
</xs:complexType>
</xs:element>
was:
1. Wrong java2wsdl mapping occurs when try to use java.lang.Long types in web
service.
java.lang.Long mappes to long instead of nilable long.
2. Problem with complex types. If we use long (not java.lang.Long) as in/out
parameter in web service methods java2wsdl mappes it as nilable. But if we use
in/out complex type with long field we will get not nilable in wsdl.
Example:
>From the following classes java2wsdl generates wrong WSDL.
package x4444;
[BatchManagerService.java]
public class BatchManagerService {
public x4444.Person getPerson(java.lang.Long personINTN)
{
return null;
};
public x4444.Person getPersonSimple(long personSIMPLEINTN)
{
return null;
};
}
[Person.java]
package x4444;
public class Person {
public java.lang.Long getLong(){return null;};
public long getSimpleLong(){return 0;};
}
<xs:element name="getPerson">
<xs:complexType>
<xs:sequence>
<xs:element name="personINTN" nillable="true" type="xs:long" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getPersonResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="return" nillable="true" type="ns:Person" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Person" type="ns:Person" />
<xs:complexType name="Person">
<xs:sequence>
<xs:element name="long" type="xs:long" />
<xs:element name="simpleLong" type="xs:long" />
</xs:sequence>
</xs:complexType>
<xs:element name="getPersonSimple">
<xs:complexType>
<xs:sequence>
<xs:element name="personSIMPLEINTN" nillable="true" type="xs:long" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getPersonSimpleResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="return" nillable="true" type="ns:Person" />
</xs:sequence>
</xs:complexType>
</xs:element>
> Wrong type mapping for java.lang.Long
> -------------------------------------
>
> Key: AXIS2-2564
> URL: https://issues.apache.org/jira/browse/AXIS2-2564
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Reporter: Eugeniy Nizhinskiy
>
> 1. Wrong java2wsdl mapping occurs when try to use java.lang.Long types in web
> service.
> java.lang.Long mappes to long instead of nilable long.
> 2. Problem with complex types. If we use long (not java.lang.Long) as in/out
> parameter in web service methods java2wsdl mappes it as nilable. But if we
> use in/out complex type with long field we will get not nilable in wsdl.
> Example:
> From the following classes java2wsdl generates wrong WSDL.
> [BatchManagerService.java]
> package x4444;
> public class BatchManagerService {
>
> public x4444.Person getPerson(java.lang.Long personINTN)
> {
> return null;
> };
> public x4444.Person getPersonSimple(long personSIMPLEINTN)
> {
> return null;
> };
> }
> [Person.java]
> package x4444;
> public class Person {
> public java.lang.Long getLong(){return null;};
> public long getSimpleLong(){return 0;};
> }
> <xs:element name="getPerson">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="personINTN" nillable="true" type="xs:long" />
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getPersonResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="return" nillable="true" type="ns:Person" />
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="Person" type="ns:Person" />
> <xs:complexType name="Person">
> <xs:sequence>
> <xs:element name="long" type="xs:long" />
> <xs:element name="simpleLong" type="xs:long" />
> </xs:sequence>
> </xs:complexType>
> <xs:element name="getPersonSimple">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="personSIMPLEINTN" nillable="true" type="xs:long" />
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getPersonSimpleResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="return" nillable="true" type="ns:Person" />
> </xs:sequence>
> </xs:complexType>
> </xs:element>
--
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]