Honestly, no idea.   I just did:

./wsdl2java  -all -d /tmp/t2 -p com.test   
        https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl
cd /tmp/t2
ant PayPalAPIInterfaceClient

and the client started up fine and contacts the PayPal service.  (it got an 
expected fault back due to not really loging in or anything.)


What version of CXF?  JAXB?

Dan



On Thursday 07 April 2011 8:37:33 AM Emil Dombagolla wrote:
> Dear all,
> 
> 
> Please help me on this.
> 
> 
> I am getting following error  when I try to connect to PayPal web service
> with my wsdl2java generated client codes.
> 
> 
> *=================================================*
> 
> 
> *INFO: Creating Service {urn:ebay:api:PayPalAPI}PayPalAPIInterfaceService
> from WSDL: https://www.paypalobjects.com/wsdl/PayPalSvc.wsdl
> Exception in thread "main" javax.xml.ws.WebServiceException:
> org.apache.cxf.service.factory.ServiceConstructionException
>     at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:333)
>     at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:318)
>     at javax.xml.ws.Service.getPort(Unknown Source)
>     at
> com.webservice.paypal.PayPalAPIInterfaceService.getPayPalAPIAA(PayPalAPIInt
> erfaceService.java:106) at test.main(test.java:97)
> Caused by: org.apache.cxf.service.factory.ServiceConstructionException
>     at
> org.apache.cxf.jaxb.JAXBDataBinding.initialize(JAXBDataBinding.java:341)
>     at
> org.apache.cxf.service.factory.AbstractServiceFactoryBean.initializeDataBin
> dings(AbstractServiceFactoryBean.java:86) at
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFro
> mWSDL(ReflectionServiceFactoryBean.java:404) at
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServi
> ceModel(ReflectionServiceFactoryBean.java:503) at
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(Reflecti
> onServiceFactoryBean.java:242) at
> org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFac
> toryBean.java:202) at
> org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(Abs
> tractWSDLBasedEndpointFactory.java:101) at
> org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:90)
>     at
> org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBea
> n.java:144) at
> org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.jav
> a:133) at org.apache.cxf.jaxws.ServiceImpl.createPort(ServiceImpl.java:464)
> at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:331) ... 4
> more
> Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1
> counts of IllegalAnnotationExceptions
> javax.xml.bind.JAXBElement does not have a no-arg default constructor.
>     this problem is related to the following location:
>         at javax.xml.bind.JAXBElement
>         at protected javax.xml.bind.JAXBElement
> com.webservice.paypal.ReverseTransactionResponseDetailsType.reverseTransact
> ionID at com.webservice.paypal.ReverseTransactionResponseDetailsType at
> public
> com.webservice.paypal.ReverseTransactionResponseDetailsType
> com.webservice.paypal.ObjectFactory.createReverseTransactionResponseDetails
> Type() at com.webservice.paypal.ObjectFactory
>         at protected java.lang.Object
> com.webservice.paypal.AbstractRequestType.any
>         at com.webservice.paypal.AbstractRequestType
>         at
> com.webservice.paypal.GetBillingAgreementCustomerDetailsRequestType
>         at protected
> com.webservice.paypal.GetBillingAgreementCustomerDetailsRequestType
> com.webservice.paypal.GetBillingAgreementCustomerDetailsReq.getBillingAgree
> mentCustomerDetailsRequest at
> com.webservice.paypal.GetBillingAgreementCustomerDetailsReq *
> 
> 
> 
> ==========================================
> 
> 
> 
> I got the wsdl file for Pay Pal  form the following location,
> 
> https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl
> 
> 
>  <https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl>
> 
> And I used this url to generate my client as follows.
> 
> *Wsdl2java –p com.test  https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl*
> 
> 
> <https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl>
> 
> In my generated service stub also using the WSDL location for the service
> as following. but the real endpoint should be  ,
> https://api-aa.sandbox.paypal.com/2.0/,
> 
> 
> <https://api-aa.sandbox.paypal.com/2.0/>
> 
> *@WebServiceClient(name = "PayPalAPIInterfaceService",
>                   wsdlLocation = "
> https://www.paypalobjects.com/wsdl/PayPalSvc.wsdl";,
>                   targetNamespace = "urn:ebay:api:PayPalAPI")
> public class PayPalAPIInterfaceService extends Service {
> 
>     public final static URL WSDL_LOCATION;
> 
>     public final static QName SERVICE = new QName("urn:ebay:api:PayPalAPI",
> "PayPalAPIInterfaceService");
>     public final static QName PayPalAPI = new
> QName("urn:ebay:api:PayPalAPI", "PayPalAPI");
>     public final static QName PayPalAPIAA = new
> QName("urn:ebay:api:PayPalAPI", "PayPalAPIAA");
>     static {
>         URL url = null;
>         try {
>             url = new
> URL("https://www.paypalobjects.com/wsdl/PayPalSvc.wsdl ");
>         } catch (MalformedURLException e) {
>             System.err.println("Can not initialize the default wsdl from
> https://www.paypalobjects.com/wsdl/PayPalSvc.wsdl";);
>             // e.printStackTrace();
>         }
>         WSDL_LOCATION = url;
>     }*
> 
> 
> *
> *
> 
> This is may be why I get this error, please someone help me how to
> configure this endpoint. Even if I changed in the code it didn’t work. How
> to configure this endpoint other than the WSDL location?
> 
> 
> Thank you so much.
> 
> Emil

-- 
Daniel Kulp
[email protected]
http://dankulp.com/blog
Talend - http://www.talend.com

Reply via email to