Oh, well, then, the DynamicClientFactory is for you. You'll have to see if
it generates enough stuff for you. I see that we don't have a sample of
this. If you google and can't find enough information, please let me know
and I'll rustle up some more help.

On Mon, Jan 12, 2009 at 8:48 AM, elhanan <[email protected]> wrote:

>
> ok, here's the thing
>
> i tried wsdl2java, can't use that becouse it always requiries i will have a
> generated client classs
>
> tried dispatch method like so (with te wsdl i enclosed earlier):
>
>                String
> wsdl="
> http://btst3/UnderWrite.Biztalk.Proxy/Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails_Prt.asmx?WSDL
> ";
>                GetAgentDetails parameters=new GetAgentDetails();
>                final AgentWSRequest agentWSRequest = new AgentWSRequest();
>                agentWSRequest.setAgentNumber(8888);
>                parameters.setPart(agentWSRequest);
>
>                URL url =new
> URL("
> http://btst3/UnderWrite.Biztalk.Proxy/Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails_Prt.asmx?WSDL
> ");
>                QName q=new
> QName("http://Phoenix.co.il/UnderWrite
> ","Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails_Prt");
>                final Service service= Service.create(url, q);
>                QName port=new
> QName("http://Phoenix.co.il/UnderWrite
> ","Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails_Prt");
>                service.addPort(port,"http://schemas.xmlsoap.org/soap/";,
> "
> http://btst3/UnderWrite.Biztalk.Proxy/Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails_Prt.asmx
> ");
>
>                JAXBContext ctx =
> JAXBContext.newInstance(ObjectFactory.class);
>                final Dispatch createDispatch = service.createDispatch(q,
> ctx,
> Service.Mode.MESSAGE);
>
>                final Object invoke = createDispatch.invoke(parameters);
>                System.out.println(invoke);
>
> but i got: Error setting the source for SOAPPart: null
>
> i also tried using
>
>
>                DynamicClientFactory newInstance =
> DynamicClientFactory.newInstance();
>                final ClassLoader contextClassLoader =
> Thread.currentThread().getContextClassLoader();
>
>                final Client createClient =
> newInstance.createClient(wsdl,contextClassLoader);
>                Object o =
>
> contextClassLoader.loadClass("il.co.phoenix.underwrite.AgentWSRequest").newInstance();
>                createClient.invoke("GetAgentDetails", agentWSRequest);
>
> but aside form the fact that it doesn't find the classes, i would like to
> to
> actually generate the classes in desing time but use the dynamic client
> with
> them, but the package names are different.
>
> also i don't know how to use the JaxWsClientFactoryBean there is no
> documentation on it.
>
> Benson Margulies-4 wrote:
> >
> > The answer to your last question is yes. As for the rest, look at the
> > sample for the dynamic client, a picture is worth 1000 words.
> >
> > On Sun, Jan 11, 2009 at 2:39 PM, elhanan <[email protected]> wrote:
> >>
> >> but if i won't see any source, how will i use it? it's a chicken and egg
> >> kinda thing ?
> >>
> >> my types are not very complex, usually one bean, containing simple
> types,
> >> or
> >> other array complex types.
> >>
> >> i tried using xmlbeans with axis2, but i created beans what tied to
> >> xmlbeans
> >> lib.
> >>
> >> wil wsd2java create java beans with just annotations? then i would be
> >> able
> >> to switch back to glue anytime, (that's the main thought here)
> >>
> >> Benson Margulies-4 wrote:
> >>>
> >>> CXF has a thing called the DynamicClient. At runtime, the
> >>> DynamicClientFactory will eat the WSDL and create a proxy client. You
> >>> never see any source. You can use 'invoke'-style methods to call it.
> >>> It gets clumsier and clumsier depending on how complex your types are.
> >>> You could give it a whirl and see what happens.
> >>>
> >>> Dan might know, as an alternative, if xmlbeans has an xsd-to-pojo
> >>> generator that you could use to set up pojo-enough client objects.
> >>>
> >>> Or, you might find that you don't object to the plague of snails
> >>> (@nnotations) that you get by using CXF's wsdl2java tool.
> >>>
> >>>
> >>> On Sun, Jan 11, 2009 at 1:58 PM, elhanan <[email protected]> wrote:
> >>>>
> >>>> what do you mean complex object in flight?
> >>>>
> >>>> and for commiting, well if i were to write such code, i doubt my
> >>>> company
> >>>> would allow me to commit it as open source, but i always wanted to
> join
> >>>> an
> >>>> os project development as a hobby, i was looking into spring and seam,
> >>>> but
> >>>> i didnt' get the time to actually learn them good enough to develop
> to.
> >>>>
> >>>>
> >>>> Benson Margulies-4 wrote:
> >>>>>
> >>>>> 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 <[email protected]>
> 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.
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>>
> >>>> --
> >>>> View this message in context:
> >>>>
> http://www.nabble.com/cxf%27s-dynamic-proxies---tp21400946p21402626.html
> >>>> Sent from the cxf-user mailing list archive at Nabble.com.
> >>>>
> >>>>
> >>>
> >>>
> >>
> >> --
> >> View this message in context:
> >>
> http://www.nabble.com/cxf%27s-dynamic-proxies---tp21400946p21403216.html
> >> Sent from the cxf-user mailing list archive at Nabble.com.
> >>
> >>
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/cxf%27s-dynamic-proxies---tp21400946p21414751.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>
>

Reply via email to