dev@jaxb.java.net

Re: Plugging in new codegen module for wsgen (AGAIN)

From: Jason Weinstein <Jason.Weinstein_at_Sun.COM>
Date: Mon, 06 Oct 2008 23:01:05 -0700

Sorry for double post.
I believe the interfaces that are generated for the wsdl operations
would be correct.
As an example of something i would like to generate using xbeans for an
example is

public class FILEPortType implements IFILEPortType {
    private String serviceName_FILEOperation =
"{http://enterprise.netbeans.org/bpel/BpelModuleFileExample/SayHello}PartnerLinkFile";
    private QName inputMessageQName_FILEOperation = new
QName("http://j2ee.netbeans.org/wsdl/FILE", "FILEOperationRequest");
    private String operation_FILEOperation =
"{http://j2ee.netbeans.org/wsdl/FILE}FILEOperation";
    private String mepPattern_FILEOperation =
"http://www.w3.org.2004/08/wsdl/in-out";

    private NMRClient2 client_FILEOperation = new NMRClient2();

    public FILEPortType() {
        client_FILEOperation.getNMRClient().setServiceName(
                serviceName_FILEOperation);
        
client_FILEOperation.setInputMessageQName(inputMessageQName_FILEOperation);
        client_FILEOperation.getNMRClient().setOperationQName(
                operation_FILEOperation);
        client_FILEOperation.getNMRClient().setMEPPattern(
                mepPattern_FILEOperation);
    }

    public GreetingDocument.Greeting FILEOperation(
            GreetingDocument.Greeting arg0) throws Exception {
        List<Node> argList = new ArrayList<Node>();
        argList.add(arg0.getDomNode());

        Node result = client_FILEOperation.execute(argList.toArray(new
Node[0]));

        GreetingDocument doc = GreetingDocument.Factory.parse(result);
        return doc.getGreeting();
    }
}

One thing i need is to know is the names of the arguments so i can
serialize them and deserialize the result. The other parts are derived
from the wsdl and an extra peice of information (e.g. servicename)

Jason Weinstein wrote:

> Thanks. Can you tell me if my use cases are possible with the current
> architecture and wsimport? I will take a look at the documentation in
> the mean time.
>
> Rama Pulavarthi wrote:
>
>> Hi Jason,
>> May be you are talking about wsimport. Wsimport handles the
>> generation of Java classes starting from wsdl.
>> Wsgen is a annotation processor that lets you generate WSDL and
>> runtime classes from Web Service classes.
>> JAX-WS also generates some code at runtime using ASM.
>>
>> If you want to extend the tools, there are some pluggability points
>> like WSDLParserExtension, WSDLGeneratorExtension,
>> JavaGeneratorExtension etc.
>> You can find information about these in the JAX-WS architecture
>> document at
>> https://jax-ws-architecture-document.dev.java.net/nonav/doc/?jaxws/package-summary.html
>>
>> Tools architecture is available at
>> https://jax-ws-architecture-document.dev.java.net/nonav/doc/com/sun/tools/ws/package-summary.html
>>
>> Pluggability for custom Java generators is somewhat limited with the
>> current tools. Some re-architecture to Tools is in the works to
>> provide more extensibility points using https://wom.dev.java.net/ etc.
>>
>> thanks,
>> Rama Pulavarthi
>>
>> Jason Weinstein wrote:
>>
>>> I'm still waiting on a response?? Can anybody point me to an
>>> internal developer that may be able to help?
>>> Thanks
>>>
>>> Jason Weinstein wrote:
>>>
>>>> NOTE: i cross posted to jaxb and jax-ws email lists.
>>>>
>>>> I would like to utilize the wsgen framework to generate java code
>>>> for wsdls which are not soap based.
>>>>
>>>> I am looking to generate classes which implement the wsdl operations.
>>>>
>>>> The arguments/return to the operations would be jaxb objects i'm
>>>> thinking.
>>>>
>>>> The interfaces generated i think are mostly correct for my uses,
>>>> but it would be the implementation of the java interface methods
>>>> which i want to change, etc.
>>>>
>>>> I have two separate cases.
>>>>
>>>> 1) in which the codegen uses only the abstract wsdl to generate the
>>>> java code
>>>>
>>>> and
>>>> 2) in which the codegen uses the concrete&abstract parts to
>>>> generate the java code
>>>>
>>>> How can/does one plugin in their own code generators/emitters to
>>>> wsgen? Or any other/better means to generate the code?
>>>>
>>>> Thanks,
>>>>
>>>> Jason
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe_at_jaxb.dev.java.net
>>>> <mailto:dev-unsubscribe_at_jaxb.dev.java.net> For additional commands,
>>>> e-mail: dev-help_at_jaxb.dev.java.net <mailto:dev-help_at_jaxb.dev.java.net>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_jax-ws.dev.java.net For
>>> additional commands, e-mail: dev-help_at_jax-ws.dev.java.net
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_jaxb.dev.java.net
>> For additional commands, e-mail: dev-help_at_jaxb.dev.java.net
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_jax-ws.dev.java.net
> For additional commands, e-mail: dev-help_at_jax-ws.dev.java.net
>