2010-01-12 16 views
8

WSDL url'den Web Sevice istemci kodu oluşturmak için Netbeans'i kullandım. Ancak kod kullanarak çalışma zamanında bitiş noktası adresini değiştiremiyorum.WebService uç nokta adresini çalışma zamanında değiştirin

Lütfen bu sorunu çözmek için bana yardım edin! BindingProvider için

1) port Cast ve BindingProvider.ENDPOINT_ADDRESS_PROPERTY özelliği

MyService service = new MyService(); 
MyPort port = service.... 
BindingProvider bindingProvider = (BindingProvider) port; 
bindingProvider.getRequestContext().put(
BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://New.Endpoint/service"); 

2) Sen parametre olarak WSDL URL alır oluşturulan hizmet yapıcısı çağırabilir belirtin:

cevap

12

Gün içinde bir çok iki şekilde yapabilirsiniz.

QName qname = new QName("http://serviceuri/", "service"); 
String wsdl = "http://New.Endpoint/service?wsdl"; 
MyServiec service = new MyServiec(new URL(wsdl), qname); 
MyPort port = check...; 
3

Hepsini sizden hizmet sunucusundan yapabilirsiniz. JAX-WS sizin için yapıcının çeşitli formlarını oluşturmuş olacak. Bu, yukarıda Chandra'nın cevabında çözüm # 2 olarak belirtilen ile aynıdır.

Ancak, bu alana numaralı yanıtta olduğu gibi ad alanı ve hizmet adını bir kez daha isteyeceğinizi sanmıyorum. Basitçe yap:

 
URL wsdl = new URL("http://New.Endpoint/service?wsdl"); 
MyService wsService = new MyService(wsdlURL); 
İlgili konular