Avatar billede simonvalter Praktikant
16. maj 2004 - 19:26 Der er 4 kommentarer og
1 løsning

jax-rpc, jeg forstår det ikke

jeg har lidt problemer med at forstå jax-rpc

jeg vil godt lave en meget simpel webservice (helloworld) og så bruge den med J2ME Web Services APIs (WSA)

men lige meget hvad jeg gør så vil den ikke som jeg vil


jeg bruge axis og har deployet en sample C:\axis\samples\jaxrpc

axis laver selv wsdl når jeg går til
http://localhost:8180/axis/services/urn:xmltoday-delayed-quotes?wsdl

den ligger jeg i mit projekt og prøver at genere stub men får denne fejl ...

C:\Hello>wscompile -keep -gen:client -f:wsi -verbose config.xml
[RemoteInterfaceGenerator: Generating Java class for: StockQuoteService.java]
[CustomClassGenerator: generating JavaClass for: test]
[CustomClassGenerator: generating JavaClass for: testResponse]
[CustomClassGenerator: generating JavaClass for: getQuote]
[CustomClassGenerator: generating JavaClass for: getQuoteResponse]
warning: Operation test is of the wrong encoding SOAP style/use (rpc/encoded).  Document/literal only.  Skipping generation of operation.
warning: Operation getQuote is of the wrong encoding SOAP style/use (rpc/encoded).  Document/literal only.  Skipping generation of operation.
[StubGenerator: Generating Java class for: StockQuoteService_Stub.java]
C:\Hello\.\test\StockQuoteService_Stub.java:14: test.StockQuoteService_Stub is not abstract and does not override abs
tract method getQuote(java.lang.String) in test.StockQuoteService
public class StockQuoteService_Stub implements test.StockQuoteService, javax.xml.rpc.Stub {
      ^
1 error
error: compilation failed, errors should have been reported



wsdl filen kan ses her
http://rafb.net/paste/results/l2617755.html


er der nogen der har en ide om hvorfor den brokker sig...?
Avatar billede simonvalter Praktikant
16. maj 2004 - 19:47 #1
ok jeg kan se at det jax-rpc sample der følger med til WSA

siger

<binding name="EmployeeDBBinding" type="tns:EmployeeDBPort">
<soap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>
<operation name="getEmployees">
<soap:operation soapAction="http://www.sun.com/EmployeeDB/getEmployees"/>
<input name="getEmployeesReq">
<soap:body use="literal"/>


så der er noget med det der Document og literal.. men hvordan komer jeg videre :/
Avatar billede simonvalter Praktikant
16. maj 2004 - 19:51 #2
det jeg skal er at få axis til at bruge literal encoding for servicen, men hvor har jeg stadig ikke fundet ud af.
Avatar billede simonvalter Praktikant
16. maj 2004 - 20:18 #3
har lige fundet ud af det ..
i wsdd filen (deployment descriptoren) skal der stå

<service name="urn:xmltoday-delayed-quotes" provider="java:RPC" style="document" use="literal">
Avatar billede boomshanka Nybegynder
22. februar 2005 - 23:07 #4
hej simonvalter, jeg har samme setup og samme problem. Kan du ikke fortælle mig, om du brugte ksoap eller ksoap2. Hvis sidstnævnte er tilfældet hvordan ordnede du så serialiseringen af din helloworld på serveren? Jeg har tilføjet ovenstående linie i min WSDD, men får stadig "(webservice_Stub) is not abstract and does not override abstract method (webservice.get) in (webservice)". Jeg har forsøgt at anvende klassen PropertyInfo, men har ikke kunne få #*/%/(¤ til at fungere.

Jeg har oprettet http://www.eksperten.dk/spm/593357 som et spørgsmål til ovenstående. Jeg beklager mange gange den lidt direkte henvendelse, men siden du er en af de eneste som har anvendt J2ME sammen med axis håber jeg du kunne svare på spørgsmålet :-)
Avatar billede simonvalter Praktikant
23. februar 2005 - 00:51 #5
hej jeg brugte ksoap2 men jeg kan desværre ikke huske flere detajler.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester