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 Tom Jordahl <to...@macromedia.com> on 2004/11/23 15:32:45 UTC

RE: [ews] Generation fails when soap location attribute is not an URL

I am really not a big fan of this.  The stubs produced by WSDL2Java will be
broken if the <service> element is specified and the endpoint is not a valid
URL.  The Locator class will return a stub that wont work, and that would be
bad.

Why not leave out the <service> element from the WSDL?

--
Tom Jordahl
Macromedia Server Development

> -----Original Message-----
> From: Guillaume Sauthier [mailto:Guillaume.Sauthier@objectweb.org]
> Sent: Tuesday, November 23, 2004 4:18 AM
> To: axis-dev@ws.apache.org
> Subject: Re: [ews] Generation fails when soap location attribute is not an
> URL
> 
> Thanks
> I'm working on a patch
> 
> Davanum Srinivas wrote:
> 
> >Guillaume,
> >
> >Yes, this is a reasonable thing to do. Please open a bug report with a
> >proposed patch.
> >
> >thanks,
> >dims
> >
> >
> >On Mon, 22 Nov 2004 11:27:22 +0100, Guillaume Sauthier
> ><gu...@objectweb.org> wrote:
> >
> >
> >>Hi all
> >>
> >>I'm facing the following problem : my Generation with EWS fails when the
> >>endpoint URL specified in WSDL is not an URL.
> >>But I need this to work, because when a client want to use a webservice
> >>that is deployed in the same time, URL of the service is unknown.
> >>This is the port-component-link usage in J2EE1.4 :
> >>the service the client want to access, is not deployed when I make the
> >>generation, so I was wondering if it is possible to have an "offline"
> >>mode for the Generation that do not check the URL validity ?
> >>
> >>Is this a reasonnable request for Axis 1.2 Final ?
> >>
> >>Here is the Exception I get
> >>
> >>java.io.IOException: Emitter failure.  Invalid endpoint address in port
> >>SEIPort in service ServiceLocator:  NOT_AN_URL
> >>    at
> >>org.apache.axis.wsdl.toJava.JavaServiceImplWriter.writeFileBody(JavaServ
> iceImplWriter.java:232)
> >>    at
> org.apache.axis.wsdl.toJava.JavaWriter.generate(JavaWriter.java:130)
> >>    at
> >>org.apache.axis.wsdl.toJava.JavaServiceWriter.generate(JavaServiceWriter
> .java:80)
> >>    at
> >>org.apache.geronimo.ews.jaxrpcmapping.J2eeGeneratorFactory$Writers.gener
> ate(J2eeGeneratorFactory.java:267)
> >>    at
> >>org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter.generate(J2eeEmitter.j
> ava:414)
> >>    at
> >>org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter.access$2(J2eeEmitter.j
> ava:366)
> >>    at
> >>org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter$WSDLRunnable.run(J2eeE
> mitter.java:335)
> >>    at java.lang.Thread.run(Thread.java:534)
> >>
> >>regards
> >>Guillaume
> >>
> >>
> >>
> >
> >
> >
> >

Re: [ews] Generation fails when soap location attribute is not an URL

Posted by Guillaume Sauthier <Gu...@objectweb.org>.
Yes, that leads to Locator that are not directly usable.
The provider of the Stub (in a J2EE env, this is the server) must update 
the endpoint value to the right one.
But if the generation fails and did not produce any Stub/Locator, I've 
got no objects to configure and give to the client!

this is just an option that will not be the default one.
And we can log a warning to tell the user that something is wrong with 
the endpoint.

Guillaume

Tom Jordahl wrote:

>I am really not a big fan of this.  The stubs produced by WSDL2Java will be
>broken if the <service> element is specified and the endpoint is not a valid
>URL.  The Locator class will return a stub that wont work, and that would be
>bad.
>
>Why not leave out the <service> element from the WSDL?
>
>--
>Tom Jordahl
>Macromedia Server Development
>
>  
>
>>-----Original Message-----
>>From: Guillaume Sauthier [mailto:Guillaume.Sauthier@objectweb.org]
>>Sent: Tuesday, November 23, 2004 4:18 AM
>>To: axis-dev@ws.apache.org
>>Subject: Re: [ews] Generation fails when soap location attribute is not an
>>URL
>>
>>Thanks
>>I'm working on a patch
>>
>>Davanum Srinivas wrote:
>>
>>    
>>
>>>Guillaume,
>>>
>>>Yes, this is a reasonable thing to do. Please open a bug report with a
>>>proposed patch.
>>>
>>>thanks,
>>>dims
>>>
>>>
>>>On Mon, 22 Nov 2004 11:27:22 +0100, Guillaume Sauthier
>>><gu...@objectweb.org> wrote:
>>>
>>>
>>>      
>>>
>>>>Hi all
>>>>
>>>>I'm facing the following problem : my Generation with EWS fails when the
>>>>endpoint URL specified in WSDL is not an URL.
>>>>But I need this to work, because when a client want to use a webservice
>>>>that is deployed in the same time, URL of the service is unknown.
>>>>This is the port-component-link usage in J2EE1.4 :
>>>>the service the client want to access, is not deployed when I make the
>>>>generation, so I was wondering if it is possible to have an "offline"
>>>>mode for the Generation that do not check the URL validity ?
>>>>
>>>>Is this a reasonnable request for Axis 1.2 Final ?
>>>>
>>>>Here is the Exception I get
>>>>
>>>>java.io.IOException: Emitter failure.  Invalid endpoint address in port
>>>>SEIPort in service ServiceLocator:  NOT_AN_URL
>>>>   at
>>>>org.apache.axis.wsdl.toJava.JavaServiceImplWriter.writeFileBody(JavaServ
>>>>        
>>>>
>>iceImplWriter.java:232)
>>    
>>
>>>>   at
>>>>        
>>>>
>>org.apache.axis.wsdl.toJava.JavaWriter.generate(JavaWriter.java:130)
>>    
>>
>>>>   at
>>>>org.apache.axis.wsdl.toJava.JavaServiceWriter.generate(JavaServiceWriter
>>>>        
>>>>
>>.java:80)
>>    
>>
>>>>   at
>>>>org.apache.geronimo.ews.jaxrpcmapping.J2eeGeneratorFactory$Writers.gener
>>>>        
>>>>
>>ate(J2eeGeneratorFactory.java:267)
>>    
>>
>>>>   at
>>>>org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter.generate(J2eeEmitter.j
>>>>        
>>>>
>>ava:414)
>>    
>>
>>>>   at
>>>>org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter.access$2(J2eeEmitter.j
>>>>        
>>>>
>>ava:366)
>>    
>>
>>>>   at
>>>>org.apache.geronimo.ews.jaxrpcmapping.J2eeEmitter$WSDLRunnable.run(J2eeE
>>>>        
>>>>
>>mitter.java:335)
>>    
>>
>>>>   at java.lang.Thread.run(Thread.java:534)
>>>>
>>>>regards
>>>>Guillaume
>>>>
>>>>
>>>>
>>>>        
>>>>
>>>
>>>
>>>      
>>>
>
>  
>