cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benson Margulies" <bimargul...@gmail.com>
Subject Re: cxf's dynamic proxies ?
Date Sun, 11 Jan 2009 17:26:08 GMT
This depends on the complexity of your API.

If you've got complex objects in flight, then you'd have to run
wsdl2java, and that will add JAXB and JAX-WS annotations. 'Not quite
pojos'.

It would be nice if we could auto-generate classes that, when combined
with the the Simple front end and Aegis, would conform to a given
WSDL, but we've haven't got that code. If you'd like to write that
code ... well, I'd be very happy to mentor/advise/commit for you.



On Sun, Jan 11, 2009 at 11:22 AM, elhanan <ElhananM@fnx.co.il> wrote:
>
> hi..
>
> we are considering on switching our current web service framework which is
> glue to something else
>
> glue worked by gettting a wsdl, and then generating simple pojo's which had
> no dependencies, and generating a mapping document based on wsdl's schemas.
> it had one interface which created a dynamic proxy at runtime, which recived
> an array of objects and return an object.
>
> we are interested in something which is as close as possible:
>
> given the following wsdl:
> <?xml version="1.0" encoding="utf-16"?>
> <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
> xmlns:tns="http://Phoenix.co.il/UnderWrite"
> xmlns:s1="http://Phoenix.ESB.Hitum.Schemas.GreenSystemServices.Agent.AgentWSResponse"
> xmlns:s="http://www.w3.org/2001/XMLSchema"
> xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
> xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
> targetNamespace="http://Phoenix.co.il/UnderWrite"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
>  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">BizTalk
> assembly "Phoenix.ESB.UnderWrite.Biztalk, Version=1.0.0.0, Culture=neutral,
> PublicKeyToken=3b97ca913d728b36" published web service.</wsdl:documentation>
>  <wsdl:types>
>    <s:schema elementFormDefault="qualified"
> targetNamespace="http://Phoenix.co.il/UnderWrite">
>      <s:import
> namespace="http://Phoenix.ESB.Hitum.Schemas.GreenSystemServices.Agent.AgentWSResponse"
> />
>      <s:element name="GetAgentDetails">
>        <s:complexType>
>          <s:sequence>
>            <s:element minOccurs="0" maxOccurs="1" name="part"
> type="tns:AgentWSRequest" />
>          </s:sequence>
>        </s:complexType>
>      </s:element>
>      <s:complexType name="AgentWSRequest">
>        <s:sequence>
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="AgentNumber" type="s:int" />
>        </s:sequence>
>      </s:complexType>
>      <s:element name="GetAgentDetailsResponse">
>        <s:complexType>
>          <s:sequence>
>            <s:element minOccurs="0" maxOccurs="1" ref="s1:AgentWSResponse"
> />
>          </s:sequence>
>        </s:complexType>
>      </s:element>
>    </s:schema>
>    <s:schema elementFormDefault="qualified"
> targetNamespace="http://Phoenix.ESB.Hitum.Schemas.GreenSystemServices.Agent.AgentWSResponse">
>      <s:element name="AgentWSResponse" type="s1:AgentWSResponse" />
>      <s:complexType name="AgentWSResponse">
>        <s:sequence>
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="ResponseCode" type="s:short" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="ResponseDescription" type="s:string" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="AgentName" type="s:string" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="CancelledDate" type="s:date" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="Street" type="s:string" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="HouseNumber" type="s:string" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="City" type="s:string" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="ZipCode" type="s:int" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="AreaCode" type="s:short" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="PhoneNumber" type="s:int" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="AreaCode2" type="s:short" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="PhoneNumber2" type="s:int" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="InspectorNumber" type="s:short" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="SuperInspectorNumber" type="s:short" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="StaffNumber" type="s:short" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="AgenceNumber" type="s:int" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="StaffName" type="s:string" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="EmployeeNumber" type="s:string" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="ProductionConfirmCode" type="s:string" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="AddProductionLifePolicy" type="s:short" />
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="AddProductionHealthPolicy" type="s:short" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="AddLoginEmployee1" type="s:string" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="AddLoginEmployee2" type="s:string" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="Result" type="s1:AgentWSResponseResult" />
>        </s:sequence>
>      </s:complexType>
>      <s:complexType name="AgentWSResponseResult">
>        <s:sequence>
>          <s:element minOccurs="1" maxOccurs="1" form="unqualified"
> name="Code" type="s:int" />
>          <s:element minOccurs="0" maxOccurs="1" form="unqualified"
> name="Description" type="s:string" />
>        </s:sequence>
>      </s:complexType>
>    </s:schema>
>  </wsdl:types>
>  <wsdl:message name="GetAgentDetailsSoapIn">
>    <wsdl:part name="parameters" element="tns:GetAgentDetails" />
>  </wsdl:message>
>  <wsdl:message name="GetAgentDetailsSoapOut">
>    <wsdl:part name="parameters" element="tns:GetAgentDetailsResponse" />
>  </wsdl:message>
>
>
> we have attempted using axis2 with jibx, however the problems is in the top
> level elements GetAgentDetails and GetAgentDetailsResponse. glue did not
> generate these on their sub elements, (we would like to use same sub
> elements if possible) i'm guessing it created these elements on the fly.
>
> is CXF capable of doing this?
> --
> View this message in context: http://www.nabble.com/cxf%27s-dynamic-proxies---tp21400946p21400946.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>
>

Mime
View raw message