You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Raymond Feng <en...@gmail.com> on 2007/10/15 20:24:19 UTC

[AXIS2] Leverage axis2-metadata to handle JSR181/JAXWS annoations and Java2WSDL mapping?

Hi,

I'm looking for some capabilities in Axis2 to support JSR181/JAXWS as 
follows:

1) Introspect a service implementation class and/or service endpoint 
interface (SEI) to handle JSR181/JAXWS annotations. Provide the default 
values if customization is not present.

2) A utility method to generate a WSDL4J Defintion following the rules 
defined by JAX-WS 2.0 Chapter 3 Java to WSDL 1.1 mapping rules.

I had a brief look of the axis2-metadata module. The closest method I can 
find is:
org.apache.axis2.jaxws.description.DescriptionFactory.createServiceDescription(Class)

But it only accepts service implementation class and is not happy with SEI. 
I cannot construct the EndpointInterfaceDescription directly as all the 
XXXDescriptionImpl classes are not public.

Would it be possible to have some methods on 
org.apache.axis2.jaxws.description.DescriptionFactory?

    // Create the endpoint interface description from the SEI
    public static EndpointInterfaceDescription 
createEndpointInterfaceDescription(Class sei);

    // Generate WSDL defintion from the endpoint interface description
    public static Defintion 
createWSDLDefinition(EndpointInterfaceDescription description);

    // Generate WSDL defintion from the service description
    public static Defintion createWSDLDefinition(ServiceDescription 
description);

Any help will be greatly appreciated.

Thanks,
Raymond




---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


Re: [AXIS2] Leverage axis2-metadata to handle JSR181/JAXWS annoations and Java2WSDL mapping?

Posted by Raymond Feng <en...@gmail.com>.
Hi, Dustin.

Thank you for the quick response. 

I understand your point to start with the implementation class. But in my case, we only have the annotated SEI and we use the interface as the contract to drive invocations to the web service without depending on the full JAX-WS stack. To be specific, we are dealing with SCA remotable interfaces in Tuscany. What's desired is the metadata (or description) of the SEI.

Raymond
Apache Tuscany

----- Original Message ----- 
  From: Dustin Amrhein 
  To: axis-dev@ws.apache.org 
  Sent: Monday, October 15, 2007 11:44 AM
  Subject: Re: [AXIS2] Leverage axis2-metadata to handle JSR181/JAXWS annoations and Java2WSDL mapping?


  Raymond,
  As for the DescriptionFactory.createServiceDescription(Class), you are right that it assumes you are supplying the implementation class, but it will also take into account an SEI class if the implementation class specifies one via annotations. The resulting description hierarchy should have information that reflects metadata from the SEI. If you find different please post your findings.

  Raymond Feng <en...@gmail.com> wrote:
    Hi,

    I'm looking for some capabilities in Axis2 to support JSR181/JAXWS as 
    follows:

    1) Introspect a service implementation class and/or service endpoint 
    interface (SEI) to handle JSR181/JAXWS annotations. Provide the default 
    values if customization is not present.

    2) A utility method to generate a WSDL4J Defintion following the rules 
    defined by JAX-WS 2.0 Chapter 3 Java to WSDL 1.1 mapping rules.

    I had a brief look of the axis2-metadata module. The closest method I can 
    find is:
    org.apache.axis2.jaxws.description.DescriptionFactory.createServiceDescription(Class)

    But it only accepts service implementation class and is not happy with SEI. 
    I cannot construct the EndpointInterfaceDescription directly as all the 
    XXXDescriptionImpl classes are not public.

    Would it be possible to have some methods on 
    org.apache.axis2.jaxws.description.DescriptionFactory?

    // Create the endpoint interface description from the SEI
    public static EndpointInterfaceDescription 
    createEndpointInterfaceDescription(Class sei);

    // Generate WSDL defintion from the endpoint interface description
    public static Defintion 
    createWSDLDefinition(EndpointInterfaceDescription description);

    // Generate WSDL defintion from the service description
    public static Defintion createWSDLDefinition(ServiceDescription 
    description);

    Any help will be greatly appreciated.

    Thanks,
    Raymond




    ---------------------------------------------------------------------
    To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
    For additional commands, e-mail: axis-dev-help@ws.apache.org






------------------------------------------------------------------------------
  Looking for a deal? Find great prices on flights and hotels with Yahoo! FareChase.

Re: [AXIS2] Leverage axis2-metadata to handle JSR181/JAXWS annoations and Java2WSDL mapping?

Posted by Dustin Amrhein <da...@yahoo.com>.
Raymond,
As for the DescriptionFactory.createServiceDescription(Class), you are right that it assumes you are supplying the implementation class, but it will also take into account an SEI class if the implementation class specifies one via annotations. The resulting description hierarchy should have information that reflects metadata from the SEI. If you find different please post your findings.

Raymond Feng <en...@gmail.com> wrote: Hi,

I'm looking for some capabilities in Axis2 to support JSR181/JAXWS as 
follows:

1) Introspect a service implementation class and/or service endpoint 
interface (SEI) to handle JSR181/JAXWS annotations. Provide the default 
values if customization is not present.

2) A utility method to generate a WSDL4J Defintion following the rules 
defined by JAX-WS 2.0 Chapter 3 Java to WSDL 1.1 mapping rules.

I had a brief look of the axis2-metadata module. The closest method I can 
find is:
org.apache.axis2.jaxws.description.DescriptionFactory.createServiceDescription(Class)

But it only accepts service implementation class and is not happy with SEI. 
I cannot construct the EndpointInterfaceDescription directly as all the 
XXXDescriptionImpl classes are not public.

Would it be possible to have some methods on 
org.apache.axis2.jaxws.description.DescriptionFactory?

    // Create the endpoint interface description from the SEI
    public static EndpointInterfaceDescription 
createEndpointInterfaceDescription(Class sei);

    // Generate WSDL defintion from the endpoint interface description
    public static Defintion 
createWSDLDefinition(EndpointInterfaceDescription description);

    // Generate WSDL defintion from the service description
    public static Defintion createWSDLDefinition(ServiceDescription 
description);

Any help will be greatly appreciated.

Thanks,
Raymond




---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org



       
---------------------------------
Looking for a deal? Find great prices on flights and hotels with Yahoo! FareChase.