[...]

Hi Guillaume,

This could be related to TUSCANY-333, or maybe not :) Could you please create another JIRA and attach your test case to it with a brief description of any necessary steps to reproduce the problem, and one of us will take a look and will debug it. Thanks!

Hi,

I have take a look at the "bigbank-account" sample which have really changed since
my last svn update ;-) It's now a good starting reference !

I notice the <import.sdo factory="..." />
I first tried to make changes in my project and replace the wsdl sdo import by this kind of import. I have a NullPointerException when tomcat start cause the xsdHelper was unable
to find a property define in my wsdl interface (the response message type)
The problem seems to come from a difference between the generated package name
and the targetNamespace defined in the wsdl.

1/ A better exception should be thrown when a property is undefined.
See File [Tuscany_SRC]/java/sca/model/src/main/java/org/apache/tuscany/model/types/wsdl/impl/WSDLServiceContractImpl.java Method : private static Class<?> generateJavaInterface(TypeHelper typeHelper, ResourceLoader resourceLoader, PortType portType, String interfaceName)
[...]
          Class outputType=Void.class;
if (operation.getOutput() != null && operation.getOutput().getMessage()!=null && !operation.getOutput().getMessage().getParts().isEmpty()) { QName qname=((Part)operation.getOutput().getMessage().getParts().values().iterator().next()).getElementName();
                   if (qname!=null) {
Property property = xsdHelper.getGlobalProperty(qname.getNamespaceURI(), qname.getLocalPart(), true); // <<<< HERE throw an exception if property is null >>>>
                       commonj.sdo.Type type = property.getType();
[...]

Well, I've changed the -javaPackage option of the JavaGenerator tool, and retry ...
Now that's work... nearly.

2/ Why does "xsd:date" are generated as "String" ?
code snippet :

XSD definition :
----------------

   <complexType name="OperationItf">
       <xsd:attribute name="day" type="xsd:date"/>
       <xsd:attribute name="details" type="xsd:string"/>
       <xsd:attribute name="amount" type="xsd:int"/>
   </complexType>

Generated source :
------------------

[...]
 protected static final String DAY_EDEFAULT = null;
[...]
 protected String day = DAY_EDEFAULT;
[and so on for the getter and setter ...]

I've changed the generated file, replacing String by Date of my attribute.

Now that's work !

3/ Why is there a problem when a try to make a sdo import from a xsd schema in a wsdl file ?
   <import.sdo wsdlLocation="..."/>
I will invetigate a little more on that issue... perhaps the problem comes from my code.


I'm now able to deploy services in tuscany and reach them by SOAP from an other
Components Architecture (Fractal/Aokell)

In the next days, I will take a look at the ways to extends the Tuscany framework. [cf "http://wiki.apache.org/ws/Tuscany/Extending/ProtocolBindings"; that does not exists yet] Is there a to do define other bindings between EntryPoint and ExternalService ?
For now it is only by SOAP exchanged messages... isn't it ?


Good luck for the JavaOne !
Congratulation to all of you, Tuscany rocks ! ;-)

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to