OK, I see where you're coming from. Personally, I've found UDDI to be
more trouble than it's worth and tend to ignore the location specified
in the WSDL. The problem I have with UDDI is it's granularity -- or lack
thereof. 

Ideally you'd have one UDDI registry with all the web services in it
(external or internal UDDI, I don't care). But the problem with that is
I may want to call the web service on the development machine when I'm
in development and the production machine when I'm in production. So...

I could have two UDDI registries, one for development and one for
production. I would then have one .config entry that contained the name
of the UDDI server the application should talk to. In development I
would talk to the development UDDI server, in production I would talk to
the production UDDI server. The Development UDDI server would return
references to the development web services, the production UDDI server
would return referenced to the production web services. However, I now
have to maintain 2 UDDI servers, yuck. Plus, what if I have a test
environment too, or what about a training environment, now I have 4 UDDI
servers? Oy! And then what if I want to call some development web
services and some production web services from the same environment? How
do I manage that?

So we've just ignored UDDI. .NET is nice enough to give us an easy way
to specify the location of web services at run time via the URL Behavior
property and .config entries. So I can specify which web services use
which servers. Sure, at deployment it means that I have to change
several .config entries to use production URLs instead of development
URLs, but at least I can do this one web service at a time if I
want/need to. And actually, I could play some games with DNS and avoid
changing the .config most of the time.

-Walden

------------
Walden H Leverich III
President & CEO
Tech Software
(516) 627-3800 x11
WaldenL@xxxxxxxxxxxxxxx
http://www.TechSoftInc.com 

Quiquid latine dictum sit altum viditur.
(Whatever is said in Latin seems profound.)
 
-----Original Message-----
From: web400-bounces@xxxxxxxxxxxx [mailto:web400-bounces@xxxxxxxxxxxx]
On Behalf Of Bartell, Aaron L. (TC)
Sent: Wednesday, 20 October, 2004 11:20
To: Web Enabling the AS400 / iSeries
Subject: RE: [WEB400] iSeries web service error from .Net application


The way I look at it, a WSDL file doesn't have to reside on the server
that is also offering up the service.  For instance, you may not have
your UDDI server running on the same iSeries that is taking in web
service requests.  So in that case what is the 'location' attribute
suppose to contain?  In my mind it either has to contain a domain or ip
address.  If you leave it as localhost then the web service consumer has
to be smart enough to replace localhost with the ip address of the
server it found the WSDL on.

This is just my perception of how WSDL and UDDI interoperate with each
other.  It may be that I am making wrong assumptions.

How are you approaching deployment of WSDL files?

Aaron Bartell


-----Original Message-----
From: web400-bounces@xxxxxxxxxxxx [mailto:web400-bounces@xxxxxxxxxxxx] 
Sent: Wednesday, October 20, 2004 10:03 AM
To: Web Enabling the AS400 / iSeries
Subject: RE: [WEB400] iSeries web service error from .Net application

Aaron,

Your WSDL file contains the IP (or name) of the machine it's installed
on? Why? Doesn't that make deployment difficult since it requires you to
change the WDSL between the test and production deployments?

Rick,

Also have your developers check that the URL Behavior in the properties
page for the Web Reference is set to Dynamic. If they grabbed the WSDL
from the same machine they're testing against it won't cause a problem
now, but it will when you go to production. You need a way to tell .NET
where to look for the WebService. By default it hard codes the URL you
grabbed the WSDL from, but if you change the URL Behavior to dynamic it
will use the URL you specify in the .config file so you can change it to
use production vs. test.

As for why it's blowing up, has the developer run it in debug to see
where that exception is being thrown and why?

-Walden 


------------
Walden H Leverich III
President & CEO
Tech Software
(516) 627-3800 x11
WaldenL@xxxxxxxxxxxxxxx
http://www.TechSoftInc.com 

Quiquid latine dictum sit altum viditur.
(Whatever is said in Latin seems profound.)
 
-----Original Message-----
From: web400-bounces@xxxxxxxxxxxx [mailto:web400-bounces@xxxxxxxxxxxx]
On Behalf Of Bartell, Aaron L. (TC)
Sent: Wednesday, 20 October, 2004 09:32
To: Web Enabling the AS400 / iSeries
Subject: RE: [WEB400] iSeries web service error from .Net application

What type of web service is it?  Are you using SOAP?  Is the .NET
program consuming a WSDL file?  One thing that got me when one of our
.NET programmers tried to consume a web service from my local box was
the URL specified in the WSDL.  It had 'localhost' specified and it
should have been my IP address.  Here is the line of code you need to
change in your WDSL file:

<wsdlsoap:address
location="http://192.99.99.155:9080/CustomerWeb/services/Doorway"/>

HTH,
Aaron Bartell
 

-----Original Message-----
From: web400-bounces@xxxxxxxxxxxx [mailto:web400-bounces@xxxxxxxxxxxx]
Sent: Wednesday, October 20, 2004 8:23 AM
To: web400@xxxxxxxxxxxx
Subject: [WEB400] iSeries web service error from .Net application

We are trying our first iSeries web service.  It's been slow going but
we've finally got it.  Almost.  When the .Net application tries to use
the service it gets an error.  The developer can access the service
using IE so we know the connection is good and the service will work.
The service hasn't been published to the iSeries yet.  It is currently
running on a WDSc WAS test server on my PC.  I can provide source code
if necessary.  The .Net error information is shown below.  Any help
would be greatly appreciated.

"System.Net.WebException: The underlying connection was closed: Unable
to connect to the remote server.\r\n   at
System.Net.HttpWebRequest.CheckFinalStatus()\r\n   at
System.Net.HttpWebRequest.EndGetRequestStream(IAsyncResult
asyncResult)\r\n   at System.Net.HttpWebRequest.GetRequestStream()\r\n
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
methodName, Object[] parameters)\r\n   at
TestI5Service.WebReference.ARSWebSvcService.getFormattedField(String
fieldName) in C:\\Documents and Settings\\mhill2\\My Documents\\Visual
Studio Projects\\TestI5Service\\Web
References\\WebReference\\Reference.cs:line 38\r\n   at
TestI5Service.Form1.button1_Click(Object sender, EventArgs e) in
c:\\documents and settings\\mhill2\\my documents\\visual studio
projects\\testi5service\\form1.cs:line 93"

Rick
_______________________________________________
This is the Web Enabling the AS400 / iSeries (WEB400) mailing list To
post a message email: WEB400@xxxxxxxxxxxx To subscribe, unsubscribe, or
change list options,
visit: http://lists.midrange.com/mailman/listinfo/web400
or email: WEB400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/web400.


_______________________________________________
This is the Web Enabling the AS400 / iSeries (WEB400) mailing list To
post a message email: WEB400@xxxxxxxxxxxx To subscribe, unsubscribe, or
change list options,
visit: http://lists.midrange.com/mailman/listinfo/web400
or email: WEB400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/web400.


_______________________________________________
This is the Web Enabling the AS400 / iSeries (WEB400) mailing list To
post a message email: WEB400@xxxxxxxxxxxx To subscribe, unsubscribe, or
change list options,
visit: http://lists.midrange.com/mailman/listinfo/web400
or email: WEB400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/web400.


_______________________________________________
This is the Web Enabling the AS400 / iSeries (WEB400) mailing list
To post a message email: WEB400@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/web400
or email: WEB400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/web400.



As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.