If they comply with the JAX-WS standard, they do.

On Sat, Jan 17, 2009 at 11:55 AM, אלחנן מעיין <[email protected]> wrote:

> Ok, do you think this leads other source generators to do the same thing?
>
> -----Original Message-----
> From: Daniel Kulp [mailto:[email protected]]
> Sent: Friday, January 16, 2009 11:21 PM
> To: [email protected]
> Cc: אלחנן מעיין
> Subject: Re: cxf's dynamic proxies ?
>
> On Friday 16 January 2009 9:01:49 am אלחנן מעיין wrote:
> > Yea, but get GetAgentDetails is not refed, only the response is.
>
> Right, but the rules for unwrapping apply to the whole operation.   If
> either
> the request OR the response cannot be unwrapped, then the whole operation
> is
> not unwrapped.
>
> Dan
>
>
> > -----Original Message-----
> > From: Daniel Kulp [mailto:[email protected]]
> > Sent: Thursday, January 15, 2009 11:19 PM
> > To: [email protected]
> > Cc: Benson Margulies; אלחנן מעיין
> > Subject: Re: cxf's dynamic proxies ?
> >
> > On Tuesday 13 January 2009 8:00:55 am Benson Margulies wrote:
> > > 2) Something about your wsdl makes CXF/JAX-WS think that those extra
> > > wrappers are appropriate. Sadly, I'm not an expert in this area.
> > > Perhaps someone else can explain it. This has nothing to do with the
> > > wire, only to do with the Java classes. So it should not effect
> > > compatibility. There may be some WSDL tweak that would change this.
> > > I'm copying Dan who often rescues me from this subject matter.
> >
> > The issue is the response type:
> >       <s:element name="GetAgentDetailsResponse">
> >         <s:complexType>
> >           <s:sequence>
> >             <s:element minOccurs="0" maxOccurs="1"
> ref="s1:AgentWSResponse"
> > /> </s:sequence>
> >         </s:complexType>
> >       </s:element>
> >
> > To unwrap, the element must NOT be a "ref".   If you change that to:
> > <s:element minOccurs="0" maxOccurs="1"
> >      type="s1:AgentWSResponse" name="AgentWSResponse"/>
> >
> > it may unwrap it.
> >
> > Dan
> >
> > > On Tue, Jan 13, 2009 at 1:20 AM, <[email protected]> wrote:
> > > >  I'm assuming I wil; be able to actually use the jibx generated
> > > > classes  and not use reflection am I correct?
> > > >
> > > >
> > > >
> > > > Also one thing that deeply concerns is the use of
> > > > GetAgentDetalils, in glue, I didn't have to use that object, it
> > > > simply generated the agentWSRequest and I sent that one, to the
> > > > proxy, I believe this is called unwrapped mode. If i use this
> > > > here, I would have to use another object,t and thus break backwords
> compatilbilty.
> > > >
> > > >
> > > >  ------------------------------
> > > >
> > > > *From:* Benson Margulies [mailto:[email protected]]
> > > > *Sent:* Monday, January 12, 2009 11:14 PM
> > > > *To:* אלחנן מעיין
> > > > *Subject:* Re: cxf's dynamic proxies ?
> > > >
> > > >
> > > >
> > > > Here's the client example I'm about to check in.
> > > >
> > > >
> > > > /**
> > > >  * Licensed to the Apache Software Foundation (ASF) under one
> > > >  * or more contributor license agreements. See the NOTICE file
> > > >  * distributed with this work for additional information
> > > >  * regarding copyright ownership. The ASF licenses this file
> > > >  * to you under the Apache License, Version 2.0 (the
> > > >  * "License"); you may not use this file except in compliance
> > > >  * with the License. You may obtain a copy of the License at
> > > >  *
> > > >  * http://www.apache.org/licenses/LICENSE-2.0
> > > >  *
> > > >  * Unless required by applicable law or agreed to in writing,
> > > >  * software distributed under the License is distributed on an
> > > >  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> > > >  * KIND, either express or implied. See the License for the
> > > >  * specific language governing permissions and limitations
> > > >  * under the License.
> > > >  */
> > > >
> > > > package demo.hw.client;
> > > >
> > > > import java.beans.BeanDescriptor;
> > > > import java.beans.PropertyDescriptor; import java.io.File; import
> > > > java.lang.reflect.Method; import java.net.URL; import
> > > > java.util.List;
> > > >
> > > > import javax.xml.namespace.QName;
> > > >
> > > > import org.apache.cxf.endpoint.Client; import
> > > > org.apache.cxf.endpoint.ClientImpl;
> > > > import org.apache.cxf.endpoint.Endpoint; import
> > > > org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
> > > > import org.apache.cxf.service.model.BindingInfo;
> > > > import org.apache.cxf.service.model.BindingMessageInfo;
> > > > import org.apache.cxf.service.model.BindingOperationInfo;
> > > > import org.apache.cxf.service.model.MessagePartInfo;
> > > > import org.apache.cxf.service.model.ServiceInfo;
> > > >
> > > > /**
> > > >  *
> > > >  */
> > > > public final class ComplexClient {
> > > >
> > > >     private static final QName SERVICE_NAME
> > > >         = new QName("http://complex.demo.cxf.apache.org/";,
> > > > "ComplexImplService");
> > > >
> > > >     private ComplexClient() {
> > > >     }
> > > >
> > > >     /**
> > > >      * @param args
> > > >      */
> > > >     public static void main(String[] args) throws Exception {
> > > >         if (args.length == 0) {
> > > >             System.out.println("please specify wsdl");
> > > >             System.exit(1);
> > > >         }
> > > >
> > > >         URL wsdlURL;
> > > >         File wsdlFile = new File(args[0]);
> > > >         if (wsdlFile.exists()) {
> > > >             wsdlURL = wsdlFile.toURL();
> > > >         } else {
> > > >             wsdlURL = new URL(args[0]);
> > > >         }
> > > >
> > > >         System.out.println(wsdlURL);
> > > >
> > > >         JaxWsDynamicClientFactory factory =
> > > > JaxWsDynamicClientFactory.newInstance();
> > > >         Client client =
> > > > factory.createClient(wsdlURL.toExternalForm(),
> > > > SERVICE_NAME);
> > > >         ClientImpl clientImpl = (ClientImpl) client;
> > > >         Endpoint endpoint = clientImpl.getEndpoint();
> > > >         ServiceInfo serviceInfo =
> > > > endpoint.getService().getServiceInfos().get(0);
> > > >         QName bindingName = new
> > > > QName("http://complex.demo.cxf.apache.org/";,
> > > > "ComplexImplServiceSoapBinding");
> > > >         BindingInfo binding = serviceInfo.getBinding(bindingName);
> > > >         //{
> > > >         QName opName = new QName("http://Company.com/Application";,
> > > > "GetAgentDetails");
> > > >         BindingOperationInfo boi = binding.getOperation(opName);
> > > >         BindingMessageInfo inputMessageInfo = boi.getInput();
> > > >         List<MessagePartInfo> parts =
> > > > inputMessageInfo.getMessageParts(); // only one part.
> > > >         MessagePartInfo partInfo = parts.get(0);
> > > >         Class<?> partClass = partInfo.getTypeClass();
> > > >         System.out.println(partClass.getCanonicalName()); //
> > > > GetAgentDetails
> > > >         Object inputObject = partClass.newInstance();
> > > >         // Unfortunately, the slot inside of the part object is
> > > > also called 'part'.
> > > >         // this is the descriptor for get/set part inside the
> > > > GetAgentDetails class.
> > > >         PropertyDescriptor partPropertyDescriptor = new
> > > > PropertyDescriptor("part", partClass);
> > > >         // This is the type of the class which really contains all
> > > > the parameter information.
> > > >         Class<?> partPropType =
> > > > partPropertyDescriptor.getPropertyType();
> > > > // AgentWSRequest
> > > >         System.out.println(partPropType.getCanonicalName());
> > > >         Object inputPartObject = partPropType.newInstance();
> > > >
> > > > partPropertyDescriptor.getWriteMethod().invoke(inputObject,
> > > > inputPartObject);
> > > >         PropertyDescriptor numberPropertyDescriptor = new
> > > > PropertyDescriptor("agentNumber", partPropType);
> > > >
> > > > numberPropertyDescriptor.getWriteMethod().invoke(inputPartObject,
> > > > new Integer(314159));
> > > >
> > > >         Object[] result = client.invoke(opName, inputObject);
> > > >         Class<?> resultClass = result[0].getClass();
> > > >         System.out.println(resultClass.getCanonicalName()); //
> > > > GetAgentDetailsResponse
> > > >         PropertyDescriptor resultDescriptor = new
> > > > PropertyDescriptor("agentWSResponse", resultClass);
> > > >         Object wsResponse =
> > > > resultDescriptor.getReadMethod().invoke(result[0]);
> > > >         Class<?> wsResponseClass = wsResponse.getClass();
> > > >         System.out.println(wsResponseClass.getCanonicalName());
> > > >         PropertyDescriptor agentNameDescriptor = new
> > > > PropertyDescriptor("agentName", wsResponseClass);
> > > >         String agentName =
> > > > (String)agentNameDescriptor.getReadMethod().invoke(wsResponse);
> > > >         System.out.println("Agent name: " + agentName);
> > > >
> > > >     }
> > > >
> > > > }
> > > >
> > > >  On Mon, Jan 12, 2009 at 11:08 AM, <[email protected]> wrote:
> > > >
> > > > https://issues.apache.org/jira/secure/ManageAttachments.jspa?id=12
> > > > 41
> > > > 2202
> > > >
> > > >
> > > >
> > > > done
> > > >
> > > >
> > > >  ------------------------------
> > > >
> > > > *From:* Benson Margulies [mailto:[email protected]]
> > > > *Sent:* Monday, January 12, 2009 5:38 PM
> > > > *To:* אלחנן מעיין
> > > >
> > > >
> > > > *Subject**:* Re: cxf's dynamic proxies ?
> > > >
> > > >
> > > >
> > > > It gives Apache permission to include it in the project.
> > > >
> > > > 2009/1/12 <[email protected]>
> > > >
> > > > What does it mean?
> > > >
> > > >
> > > >  ------------------------------
> > > >
> > > > *From:* Benson Margulies [mailto:[email protected]]
> > > > *Sent:* Monday, January 12, 2009 5:24 PM
> > > > *To:* אלחנן מעיין
> > > >
> > > >
> > > > *Subject**:* Re: cxf's dynamic proxies ?
> > > >
> > > >
> > > >
> > > > When you attach a file to a JIRA, you either say 'yes we may
> > > > incorporate it' or 'no'.
> > > >
> > > > 2009/1/12 <[email protected]>
> > > >
> > > > What is license to apache selection? ( I never opened a bug In
> > > > jira before).
> > > >
> > > >
> > > >
> > > >
> > > >  ------------------------------
> > > >
> > > > *From:* Benson Margulies [mailto:[email protected]]
> > > > *Sent:* Monday, January 12, 2009 4:59 PM
> > > > *To:* אלחנן מעיין
> > > > *Subject:* Re: cxf's dynamic proxies ?
> > > >
> > > >
> > > >
> > > > Can you open a JIRA and attach it with the 'license to Apache'
> > > > selection? Then I could directly turn it into a sample ;-)
> > > >
> > > > On Mon, Jan 12, 2009 at 9:42 AM, <[email protected]> wrote:
> > > >
> > > > sure, i allready did that, but here it is again:
> > > >
> > > > <?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.AgentWSR
> > > >es pons e" 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.AgentWSR
> > > >es
> > > >pons
> > > >e" />
> > > >      <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.AgentWSR
> > > >es
> > > >pons
> > > >e ">
> > > >      <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>
> > > >
> > > >  <wsdl:portType
> > > >
> > > >name="Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > >_P rtSo ap"> <wsdl:operation name="GetAgentDetails">
> > > >      <wsdl:input message="tns:GetAgentDetailsSoapIn" />
> > > >      <wsdl:output message="tns:GetAgentDetailsSoapOut" />
> > > >    </wsdl:operation>
> > > >  </wsdl:portType>
> > > >  <wsdl:binding
> > > >
> > > >name="Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > >_P
> > > >rtSo
> > > >ap"
> > > >
> > > >type="tns:Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDet
> > > >ai
> > > >ls_P rtSoap"> <soap:binding
> > > >transport="http://schemas.xmlsoap.org/soap/http"; />
> > > ><wsdl:operation name="GetAgentDetails">
> > > >      <soap:operation soapAction="
> > > >
> > > >http://Phoenix.co.il/UnderWrite/Phoenix_ESB_UnderWrite_Biztalk_Agen
> > > >tD etai ls_4405_AgentDetails_Prt/GetAgentDetails" style="document"
> > > >/>
> > > >      <wsdl:input>
> > > >        <soap:body use="literal" />
> > > >      </wsdl:input>
> > > >      <wsdl:output>
> > > >        <soap:body use="literal" />
> > > >      </wsdl:output>
> > > >    </wsdl:operation>
> > > >  </wsdl:binding>
> > > >  <wsdl:binding
> > > >
> > > >name="Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > >_P
> > > >rtSo
> > > >ap12"
> > > >
> > > >type="tns:Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDet
> > > >ai
> > > >ls_P rtSoap"> <soap12:binding
> > > >transport="http://schemas.xmlsoap.org/soap/http";
> > > > /> <wsdl:operation name="GetAgentDetails">
> > > >      <soap12:operation soapAction="
> > > >
> > > >http://Phoenix.co.il/UnderWrite/Phoenix_ESB_UnderWrite_Biztalk_Agen
> > > >tD etai ls_4405_AgentDetails_Prt/GetAgentDetails" style="document"
> > > >/>
> > > >      <wsdl:input>
> > > >        <soap12:body use="literal" />
> > > >      </wsdl:input>
> > > >      <wsdl:output>
> > > >        <soap12:body use="literal" />
> > > >      </wsdl:output>
> > > >    </wsdl:operation>
> > > >  </wsdl:binding>
> > > >  <wsdl:service
> > > >
> > > >name="Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > >_P
> > > >rt">
> > > >
> > > >    <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:port
> > > >
> > > >name="Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > >_P
> > > >rtSo
> > > >ap"
> > > >
> > > >binding="tns:Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_Agent
> > > >De
> > > >tail
> > > >s_PrtSoap"> <soap:address location="
> > > >
> > > >http://btst3/UnderWrite.Biztalk.Proxy/Phoenix_ESB_UnderWrite_Biztal
> > > >k_ Agen tDetails_4405_AgentDetails_Prt.asmx" />
> > > >    </wsdl:port>
> > > >    <wsdl:port
> > > >
> > > >name="Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > >_P
> > > >rtSo
> > > >ap12"
> > > >
> > > >binding="tns:Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_Agent
> > > >De tail s_PrtSoap12"> <soap12:address location="
> > > >
> > > >http://btst3/UnderWrite.Biztalk.Proxy/Phoenix_ESB_UnderWrite_Biztal
> > > >k_ Agen tDetails_4405_AgentDetails_Prt.asmx" />
> > > >    </wsdl:port>
> > > >  </wsdl:service>
> > > > </wsdl:definitions>
> > > >
> > > > Benson Margulies-4 wrote:
> > > > > Hey, can you share your wsdl, or one of the same complexity?
> > > > >
> > > > > On Mon, Jan 12, 2009 at 9:03 AM, elhanan <[email protected]>
> wrote:
> > > > >> allready tried that, lookign for blogs articles, couldn't find
> much.
> > > > >>
> > > > >> just remember, i only have my own java beans with attributes
> > > > >> alone (no getters and setters and are serliezble.
> > > > >> i only a wsdl and the operationname (in this case
> > > > >> GetAgentDetails) i don't have namespace
> > > > >>
> > > > >> the client code i'm planing should have something like this:
> > > > >>
> > > > >> Client c= new Client(wsdl);
> > > > >> Object[] ret=c.invoke(opName,new Object[]{request});
> > > > >>
> > > > >> this is what what's happening to day from our client side using
> > > > >> glue.
> > > > >>
> > > > >> you could at the same time add it to the documentation :)
> > > > >>
> > > > >> elhanan 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_Biztal
> > > >k_ Agen tDetails_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_Biztal
> > > >k_ Agen tDetails_4405_AgentDetails_Prt.asmx?WSDL
> > > >
> > > > >> ");
> > > > >>
> > > > >> >               QName q=new
> > > > >> > QName("http://Phoenix.co.il/UnderWrite
> > > > >>
> > > > >>","Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > > >>_P
> > > > >>rt")
> > > > >>;
> > > > >>
> > > > >> >               final Service service= Service.create(url, q);
> > > > >> >               QName port=new
> > > > >> > QName("http://Phoenix.co.il/UnderWrite
> > > > >>
> > > > >>","Phoenix_ESB_UnderWrite_Biztalk_AgentDetails_4405_AgentDetails
> > > > >>_P
> > > > >>rt")
> > > > >>;
> > > > >>
> > > > >> > service.addPort(port,"http://schemas.xmlsoap.org/soap/
> > > >
> > > > ",
> > > >
> > > > >> > "
> > > >
> > > >http://btst3/UnderWrite.Biztalk.Proxy/Phoenix_ESB_UnderWrite_Biztal
> > > >k_
> > > >Agen
> > > >tDetails_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.AgentWSReque
> > > >st
> > > >").n
> > > >ewInstance();
> > > >
> > > > >> >               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.AgentWSR
> > > >es
> > > >pons
> > > >e
> > > >
> > > > >> "
> > > > >>
> > > > >> >>>>>>> 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.AgentWSR
> > > >es
> > > >pons
> > > >e
> > > >
> > > > >> "
> > > > >>
> > > > >> >>>>>>> />
> > > > >> >>>>>>>      <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.AgentWSR
> > > >es
> > > >pons
> > > >e
> > > >
> > > > >> ">
> > > > >>
> > > > >> >>>>>>>      <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---tp21400946p21414996.
> > > > html
> > > >
> > > > >> Sent from the cxf-user mailing list archive at Nabble.com.
> > > >
> > > > Quoted from:
> > > > http://www.nabble.com/cxf%27s-dynamic-proxies---tp21400946p21415597.
> > > > html
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > No virus found in this incoming message.
> > > > Checked by AVG.
> > > > Version: 7.5.552 / Virus Database: 270.10.6/1887 - Release Date:
> > > > 11/01/2009 17:57
> > > >
> > > > No virus found in this outgoing message.
> > > > Checked by AVG.
> > > > Version: 7.5.552 / Virus Database: 270.10.6/1887 - Release Date:
> > > > 11/01/2009 17:57
> >
> > --
> > Daniel Kulp
> > [email protected]
> > http://dankulp.com/blog
> >
> > No virus found in this incoming message.
> > Checked by AVG.
> > Version: 7.5.552 / Virus Database: 270.10.8/1896 - Release Date:
> > 15/01/2009 19:10
> >
> >
> > No virus found in this outgoing message.
> > Checked by AVG.
> > Version: 7.5.552 / Virus Database: 270.10.8/1896 - Release Date:
> > 15/01/2009 19:10
>
>
>
> --
> Daniel Kulp
> [email protected]
> http://dankulp.com/blog
>
> No virus found in this incoming message.
> Checked by AVG.
> Version: 7.5.552 / Virus Database: 270.10.8/1898 - Release Date: 16/01/2009
> 15:09
>
>
> No virus found in this outgoing message.
> Checked by AVG.
> Version: 7.5.552 / Virus Database: 270.10.8/1898 - Release Date: 16/01/2009
> 15:09
>
>

Reply via email to