Netbeans, maven, webservice klient
Ahoj. Zapasim s problemom, na ktory mam ne_elegantne riesenie, ale zaujimalo by ma to elegantne. Vytvorim v NB maven projekt, pridam webservice client. Zvolim "wsdl from url" a zadam http://cosi/kdesi. WSDL sa stiahne, nageneruje sa potrebny kod. Problem je, ze v tom kode je uvedene: @WebServiceClient(name = "GetAppVersionInfoService", targetNamespace \ = "http://appversionws.firma.cz/";, wsdlLocation \ = "file:/C:/work/firma.cz/projekt/src/wsdl/update.firma.cz/appVersionWS/GetAppVersionInfoService.wsdl") ... co je uplna blbost, pretoze som mu jasne uviedol, ze to wsdl je na url a nie na disku. Potom sa clovek dostane do probemov, ze v netbeans projekt chodi, ale standalone nie, pretoze nenajde wsdl. Momentalne to riesim tak, ze pouzivam konstruktor ( URL, QName ) pre danu sluzbu, ale je to strasne primitivne a dost ma irituje fakt, ze musim rucne prechadzat vygenerovany kod a hladat v nom konstrukciu QName. Nejaky napad? -- Dusan
Re: Netbeans, maven, webservice klient
Dusan Zatkovsky napsal(a): > Momentalne to riesim tak, ze pouzivam konstruktor ( URL, QName ) pre danu > sluzbu, ale je to strasne primitivne a dost ma irituje fakt, ze musim rucne > prechadzat vygenerovany kod a hladat v nom konstrukciu QName. > > Nejaky napad? WebServices jsem v Mavenu nedělal pomocí wizardu v NetBeans, ale pomocí CXF, takže stačilo udělat mvn generate-sources po té, co jsem do pom.xml přidal tohle: 2.2.4 org.apache.cxf cxf-rt-frontend-jaxws ${cxf.version} org.apache.cxf cxf-rt-transports-http ${cxf.version} org.apache.cxf cxf-rt-transports-http-jetty ${cxf.version} org.apache.cxf cxf-common-utilities ${cxf.version} org.apache.cxf cxf-codegen-plugin ${cxf.version} generate-sources http://cosi/kdesi?wsdl wsdl2java org.apache.maven.plugins maven-compiler-plugin 6 6 org.apache.maven.plugins maven-dependency-plugin ${project.build.directory} Makub -- ~~ Supercomputing Center Brno Martin Kuba Institute of Computer Scienceemail: ma...@ics.muni.cz Masaryk University http://www.ics.muni.cz/~makub/ Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 -- smime.p7s Description: S/MIME Cryptographic Signature
Re: Netbeans, maven, webservice klient
On Tuesday 02 of March 2010 15:44:03 Dusan Zatkovsky wrote: Este som vypozoroval, ze toto je vlastnost _maven_ projektov v netbeans, u ant-based projektov je v .java uvedene spravne url. Je to na bugreport, alebo robim nieco uplne blbo? -- Dusan ... tykajte mi
Re: Netbeans, maven, webservice klient
On Tuesday 02 of March 2010 15:44:26 Martin Kuba wrote: Pozrel som sa na to detailnejsie a nasiel som riesenie. Sice som nepouzil apache-cosi, ale len upravil jax-ws stuff vygenerovany z netbeans. Takze: some.package.name/blablabla/some.wsdl ... zmenit na http:// Problem je, ze netbeans prestanu danu sluzbu vidiet. Nahlasil som bug. Diky -- Dusan ... tykajte mi
Re: Netbeans, maven, webservice klient
Zdravím, kód vygenerovaný utilitou wsimport (kterou interně používá org.codehaus.mojo:jaxws-maven-plugin) používá k načítání WSDL souboru Class.getResource(), takže jediná možnost je dát tam cestu relativní ke třídám a WSDL soubor přibalit do výsledné aplikace. com.example.wsdl target/generated-sources/wsdl src/main/wsdl/xxx yyy.wsdl xxx/yyy.wsdl false ${basedir}/src/main/resources com.example.webservices false ${basedir}/src/main/wsdl Také je potřeba v proměnné prostředí MAVEN_OPT nastavit systémovou vlastnost "file.encoding" na kódování zdrojáků (např. "-Dfile.encoding=UTF-8"), jinak Maven resp. wsimport vygeneruje zdrojáky v kódování platformy. S pozdravem Filip Jirsák 2010/3/2 Dusan Zatkovsky > Ahoj. > > Zapasim s problemom, na ktory mam ne_elegantne riesenie, ale zaujimalo by > ma > to elegantne. > > Vytvorim v NB maven projekt, pridam webservice client. Zvolim "wsdl from > url" > a zadam http://cosi/kdesi. WSDL sa stiahne, nageneruje sa potrebny kod. > > Problem je, ze v tom kode je uvedene: > > @WebServiceClient(name = "GetAppVersionInfoService", targetNamespace \ > = "http://appversionws.firma.cz/";, wsdlLocation \ > = "file:/C:/work/ > firma.cz/projekt/src/wsdl/update.firma.cz/appVersionWS/GetAppVersionInfoService.wsdl > ") > > ... co je uplna blbost, pretoze som mu jasne uviedol, ze to wsdl je na url > a > nie na disku. Potom sa clovek dostane do probemov, ze v netbeans projekt > chodi, ale standalone nie, pretoze nenajde wsdl. > > Momentalne to riesim tak, ze pouzivam konstruktor ( URL, QName ) pre danu > sluzbu, ale je to strasne primitivne a dost ma irituje fakt, ze musim rucne > prechadzat vygenerovany kod a hladat v nom konstrukciu QName. > > Nejaky napad? > > -- > Dusan >