Domanda

Sto cercando di costruire un servizio web-based con assi baluardo per la sicurezza, e ho sperato di schierare una sola guerra per Tomcat, anziché installare asse e distribuzione all'interno dell'asse. (Non sto fisso il che però ... questo è tutto molto nuovo territorio per me, così ho potuto utilizzare tutte le risposte che si potrebbe avere.)

Sono in esecuzione in alcuni problemi:

  • mvn jetty:run funziona bene - posso utilizzare il servizio web, e recuperare wsdl colpendo l'url per i miei servizi con un? wsdl appiccicato sull'estremità (es: http: // localhost: 8080 / webservice / servizi / ResultService WSDL "Webservice" è il nome di questo progetto), tuttavia, mvn jetty: run-guerra fallisce, meno copio manualmente baluardo-1.4.mar e rahas-1.4.mar in WEB-INF / lib prima manualmente. Se questo non viene fatto, allora pontile: run-guerra produce una serie di eccezioni su moduli bastione Non essendo disponibile, e di colpire lo stesso URL WSDL come sopra restituisce un pagina vuota. (Nessun contenuto a tutti, quando dovrebbe essere un buon pezzo di WSDL) Qui ci sono le stacktraces: http://hpaste.org/fastcgi/hpaste.fcgi/view? id = 12058 # a12058

  • A prescindere dalla posizione dei file mar nella guerra generato, Non sono mai stato in grado di ottenere Tomcat per servire il servizio web propriamente. Esso non emette nulla di nota nel registro (solo un INFO che l'applicazione web è stato distribuito), e non è previsto per wsdl gli URL sopra. http: // localhost: 8180 / InfoAssist / servizi / ResultService WSDL rendimenti Niente. ( 'Infoassist.war' è il nome della guerra generato, da cui il URL diverso da quello con molo)

Se interrogo un URL che non si esaurisce nel WSDL?, Allora ottengo un asse eccezione nel browser. Questo è probabilmente bene - succede anche durante l'esecuzione del molo funzionale: funzionare l'assistente, e non mi aspetto Uscita "reale" in un browser ma, dal momento che tutto quello che ho fatto finora è solo per testare sapone. Fa indica che l'asse è in uso con Tomcat però, così almeno alcuni delle dipendenze di guerra stanno lavorando:

org.apache.axis2.AxisFault: The service cannot be found for the
endpoint reference (EPR) /infoassist/ at
org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:65)
at org.apache.axis2.engine.Phase.invoke(Phase.java:334) at
org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:251) at
org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:160) at
org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:135)
at org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:130)
at org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:838)
at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:262)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:595)

Sono davvero afferrare a cannucce qui - qualsiasi aiuto sarebbe molto apprezzato, e, naturalmente, posso fornire molti più dettagli, ho solo non so cosa sarà di utilizzo.

È stato utile?

Soluzione 2

ho capito, con l'aiuto significativo da varie fonti:

In primo luogo,

Seguire le istruzioni:

Tuttavia, quando si costruisce la guerra dell'asse, è necessario innanzitutto modificare la compilazione in modo che axis2-codegen-1.5.jar è non esclusi dall'archivio, secondo le istruzioni qui :

  

Per utilizzare il codice Rampart in un'installazione server di Axis2, è necessario creare un nuovo file axis2.war, quella che comprende il .jar Rampart aggiunto e file .MAR. È possibile utilizzare il build.xml Ant fornito nella directory webapp per creare axis2.war, a condizione che si effettua una modifica: eliminare la riga verso la fine del file. Quindi aprire una console nella directory webapp Axis2 ed eseguire ant. Dopo l'esecuzione build.xml, è possibile trovare l'applicazione Web axis2.war creata nella directory di installazione dist Axis2.

Questo dovrebbe essere sufficiente per vedere baluardo nella lista dei moduli caricati dalla pagina all'asse di amministrazione (che è probabilmente a http: // localhost:. 8080 / axis2 / axis2-admin / listModules Tuttavia, se si sta utilizzando le distribuzioni binarie di queste librerie (asse / bastione) si deve anche fare in modo che si compila .. il codice per una specifica classe Java che è compatibile con 1.5 non stavo facendo questo, così ho continuato a incontrare errori java.lang.UnsupportedClassVersionError, ma nulla ha chiarito quanto effettivamente la causa del problema - ho sospettato l'axis2-codegen-1.5. vaso, che è stato un rosso-aringhe - i problemi era in realtà con la versione bytecode dei miei classfiles rispettato Questo è successo anche quando ho costruito i campioni bastione dalla distribuzione perché sono stati distribuiti in forma di sorgenti e il mio compilatore di default è Java 1.6. .

Altri suggerimenti

Domanda seguito da un suggerimento.

D: Hai genera il WSDL attraverso eclisse? Se è così lo si assicura che sia la versione corretta di Axis?

S: vorrei mollare tutto in un orecchio, che credo supporti Tomcat. Un orecchio è una directory che può ospitare più guerre e JAR

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top