Caute
vyrobil som si v netbeans jednoduchy webservis ktory mi bezi na adrese:
http://localhost:8084/webofka/myWS
tu je kod:
package ws;
import javax.jws.WebService;
import javax.jws.WebMethod;
@WebService()
public class myWS {
@WebMethod
public String pozdrav(String v){
return "Caves " + v;
}
}
ked kliknem na tu adresu kde bezi , dostanem vypis:
Endpoint:
Service Name: {http://ws/}myWSService
Port Name: {http://ws/}myWSPort
Information
Address: http://localhost:8084/webofka/myWS
WSDL: http://localhost:8084/webofka/myWS?wsdl
Implementation class: ws.myWS
Ako zavolam tento webservis z normalneho programu v Jave?
Skusal som cez JAX-RPC (http://www.ibm.com/developerworks/webservices/library/ws-javaclient/index.html#serviceaccess)
ale nepodarilo sa mi zavolat metodu pozdrav a ziskat odpoved..
Hilfe:-)
Diik
Fórum › Java
Ako volat webservis?
To neni mozne:-) Nikto s tym nikdy nerobil? Teda uspesne asi nie:-)
No skusil som to z lokalneho pocitaca volat takto:
String targetNamespace = "http://ws/";
try {
ServiceFactory serviceFactory = ServiceFactory.newInstance();
javax.xml.rpc.Service service = serviceFactory.createService(new QName(targetNamespace, "myWSService"));
Call call = (Call) service.createCall();
call.setProperty(Call.ENCODINGSTYLE_URI_PROPERTY, "");
call.setProperty(Call.OPERATION_STYLE_PROPERTY, "rpc");
call.setTargetEndpointAddress("http://localhost:8084/webofka/myWS");
call.removeAllParameters();
call.setPortTypeName(new QName(targetNamespace, "myWS"));
call.setOperationName(new QName(targetNamespace, "pozdrav"));
if (call.isParameterAndReturnSpecRequired(call.getOperationName())){
call.addParameter("v", new QName("http://www.w3.org/2001/XMLSchema", "string"), javax.xml.rpc.ParameterMode.IN);
call.setReturnType(new QName("http://www.w3.org/2001/XMLSchema", "string"));
}
Object[] slovo = {"Vlado"};
System.out.println("testujem: " + (String)call.invoke(slovo));
No vysledkom je:
testujem: Caves null
Spravne malo byt: testujem: Caves Vlado
Cize webservis som kontaktoval a on poslal odpoved. Lenze mu nedorazil moj text.. Vie mi to prosiiim niekto doladit???
Prikladam vypis z http://localhost:8084/webofka/myWS?wsdl
Uz som to vyriesil... Ten WS na strane servera som vytvoril cez JAX-WS v NetBeans. Ukazka vyssie je na strane klienta cez JAX-RPC, to som ale cele prepisal a podarilo sa mi tu uspesne rozchodit cez JAX-WS, najskor som musel vygenerovat classy (cez cmd prikaz wsimport) a saaj.jar niekolkokrat stiahnut a najst najfunkcnejsiu verziu:-)) Samotny kod v jave bol jednoduchy...
Uzatvorene:-)
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Volat input value z jiné stránky — založil Vitality
Kritika mého prográmku Webservis ;-) — založil pawlik
Ako spolahlivo zistit ci je subor novsi ako druhy — založil marioff
Moderátoři diskuze