Hi Alan

Yes, your patch works fine when the parameter useOriginalwsdl=false but it does not seems to have an effect when useOriginalwsdl=true. As you say, this might be taken care of in another place. However I don't know the axis2 code at all so I just have to report a bug and try to find a workaround for it until it gets fixed.

See, we cannot use the WSDL that is generated by axis since the MS Office web services pack does not understand what is coming out. We need to get out our version of WSDL which have been tested for the MS Office web services program. This became a show stopper when we moved the server behind a NATed firewall.

Again, thank you for all the help.

VBR
johan

Alan Birtles wrote:
Maybe the address is populated in more than one place, i don't know the axis code well enough to find out. Try not telling it to use your wsdl as my patch definitely works for automatically generated wsdls

Quoting Johan Lundberg <[EMAIL PROTECTED]>:

So I tried to run my .aar file in the nightly build of axis2.war from
this address:
http://people.apache.org/dist/axis2/nightly/axis2.war
released  05-Feb-2007 08:43

Unfortunately, the WSDL still shows the internal IP address when I am
downloading my service's WSDL through the axis2 admin interface.
Firefox 2.0.0.1 is the client version from which I suspect the HTTP
header comes. Note, that I did not recompile my own source since I
suspect this functionality is only depending on Axis2.war files.

I suspect that the patch you submitted is part of that codebase in this
nightly build.

check the bottom of this file:
http://85.230.25.65:8080/axis2/services/Ergo?wsdl

Why can't axis just serve my own wsdl file without modifying it?

VBR
johan


Johan Lundberg wrote:
Thank you SO much for prompt explanations and your patch! We're extremely grateful.

VBR
johan

Alan Birtles wrote:
the current behaviour is that it simply takes the machines ip address for the port
address.
In the new behaviour the address will be whatever address was used to access the wsdl file. eg if you get the wsdl from http://www.domain.com/axis2/service then the address in the wsdl would be www.domain.com, if you get the wsdl from http://ipaddress/axis2/service
then the address in the wsdl would be ipaddress.
The http headers should be sent by any client connecting to the server but some clients
may not, in this case it will fall back to the old behaviour

Quoting Johan Lundberg <[EMAIL PROTECTED]>:

OK, that explains it. But how is the port address generated in the
default behavior? Where does it find the ip-address? If we know that,
then we can probably affect it.

Re: the patch you submitted, you said it will now first look at the
HTTP headers. What headers are these? Is it in the http request for the
wsdl? If so, is it always generated on the fly for each request? What
do you mean with "if
What do you mean with "if this is unavailable"? Are not http headers
always available?

Thank you for any light you can shed on this problem.

VBR
johan

Alan Birtles wrote:
Use original wsdl only preserves the structure of the original wsdl. The port addresses will always be automatically generated. I think this is the intended behaviour
Quoting Johan Lundberg <[EMAIL PROTECTED]>:

Dear Alan,

you said the IP address of the GENERATED wsdl file will be first
retrieved from the HTTP headers or if unsuccessful taken from some
other place. Our problem however is that we don't use a genereated wsdl
file. We have set the parameter useOriginal. Despite this, axis2
changes the soap:address to the internal IP address and seems to output
a semi-generated file.Also some xml comments containing alternative
ip-addresses that we have entered seem to be stripped out. This seems
to indicate that the useOriginal wsdl is not working correctly.

VBR
johan

Alan Birtles wrote:
I have submitted a patch for this which I imagine will be in the next version. It should also be in the snapshot versions. see http://issues.apache.org/jira/browse/AXIS2-2023

Quoting Johan Lundberg <[EMAIL PROTECTED]>:

Fantastic reponse time! 3 minutes.
I understand that I have to perform an upgrade from Axis 2 1.1 to 1.1.1
before I get back on this issue.
Thank you very much.

VBR
johan

Davanum Srinivas wrote:
Is this with Axis2 1.1.1? Please log a bug if so.

thanks,
-- dims

On 2/5/07, Johan Lundberg <[EMAIL PROTECTED]> wrote:
My server hosting Axis2 has the IP-address 192.168.1.100 but clients accessing it from the big naughty Internet obviously use another address, which is not a black address. This Network Address Translation becomes a problem for clients that are accessing the service WSDL from
Internet.

even though I have set the parameter "useOriginalwsdl=true" in
services.xml the following part in my wsdl file changes from

<wsdl:service name="Ergo">
<wsdl:port name="ErgoSOAP" binding="tns:ErgoSOAP">
    <soap:address location="http://{external  IP
address}:8080/axis2/services/Ergo"/>
</wsdl:port>
</wsdl:service>


TO:

<wsdl:service name="Ergo">
<wsdl:port name="ErgoSOAP" binding="tns:ErgoSOAP">
    <soap:address
location="http://192.168.1.100:8080/axis2/services/Ergo"/>
</wsdl:port>
</wsdl:service>

why does axis2 change this even though I have set the parameter
"useOriginalwsdl=true".
Is there something else that should be configured in order to get axis to show the real outside address instead of the server's internal
IP-address?

VBR
johan


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to