2 - WidgetPrice.java - the interface for the service (often called the SEI - Service Endpoint Interface) (both client and server side)
3 - WidgetPriceService.java - the interface used to get the client-side proxy/stub implementation of the SEI (generated from the WSDL service) (client-side only)
4 - WidgetPriceServiceLocator.java - implementation of WidgetPriceService (client-side only)
5 - WidgetPriceSoapBindingSkeleton.java - server-side, delegates call to actual implementation (server-side only)
6 - WidgetPriceSoapBindingStub.java - client-side proxy implementation (client-side only)
7 - deploy.wsdd - server-side deployment info (server-side only)
8 - undeply.wsdd - server-side used to undeploy a service (server-side only)
In the simplest world, you can just call
WidgetPrice wp = new WidgetPriceSoapBindingStub(...);
But that code's not very portable. The proper thing - the JAX-RPC thing - to do - as the samples show, is to start with the ServiceFactory, use it to get a Service, and use the service to get the stub implementation.
I'm not sure what you mean by your #2. Do you want to create a proxy dynamically? Yes, you can do that. You need the WSDL and the SEI. See samples/jaxrpc/hello/HelloClient.java. If you want to do DII (dynamic invocation interface) then you don't even need the SEI or WSDL, but then you have to do EVERYTHING yourself: add parameters, add properties (like endpoing URL), invoke the operation. See samples/jaxrpc/GetInfo.java
Russell Butek
[EMAIL PROTECTED]
Please respond to [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
cc:
Subject: Using WSDL with Axis
Hi,
I've got a couple of questions about using WSDL with
Axis.
1. I notice that in example 6 of the userguide, after
using the WSDL2Java tool, the following files are
generated:
1 - WidgetPriceSoapBindingImpl.java
2 - WidgetPrice.java
3 - WidgetPriceService.java
4 - WidgetPriceServiceLocator.java
5 - WidgetPriceSoapBindingSkeleton.java
6 - WidgetPriceSoapBindingStub.java
7 - deploy.wsdd
8 - undeply.wsdd
I understand that some of these are meant to be on the
client and some of them are supposed to be on the
server.
- My question is, why is it that you need to have
certain Java files on the client side?
- Don't you just need a single file on the client that
invokes the service?
- Which files listed above need to be on the server
and which ones need to be on the client?
- What exactly is each file for?
2. Also, suppose a client wishes to access a service
on a server (both running on Axis), would it be
possible for the client to access the service if it
*only* knows the URL of the WSDL file on the server
providing the service?
Thanks,
Supriyo
__________________________________________________
Do You Yahoo!?
Win a DV camera, join our "30 Seconds of Fame" contest
http://sg.movies.yahoo.com
