Search code examples
c#javaweb-serviceswsdl.exewsdl2code

How to handle custom objects in WebService with wsdl.exe


I have a Java webservice that is defined by this Java class:

@WebService()
@SOAPBinding(style = SOAPBinding.Style.RPC)
public class ModelSim {
    /* ... */
    public boolean CheckCondition(Condition condition) {
        return condition.check(m_System, null);
    }
}

I deployed the webservice using:

ModelSim server = new ModelSim(m_Model);
Endpoint endpoint = Endpoint.publish("http://localhost:8181/uppaal", server);

CheckCondition(...) takes an Condition object which has refferences to further objects deriving from Condition.

I deployed my WebService and generated a C# class using wsdl.exe
wsdl.exe now created a proxy that can call CheckCondition with an object also defined in the proxy, but empty:

[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.1432")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://WebService/")]
public abstract partial class condition {
}

Can I implement the Condition object the same way I did in Java (A lot of work so I did not triey yet) or can I somehow auto generate the C# code for the Condition object?

The WSDL does not give any information about the Condition object beside the name yet. So maybe I can tell java to make the WSDL more explicit?

Thanks for any hints.


Solution

  • Damn, it was just because the condition object on java side had no fields. So it works for me. Maybe I need a break ;)

    Question can be closed.