Servlet spring-servlet non è disponibile (Spring + BlazeDS Integration)
-
05-07-2019 - |
Domanda
Sto cercando di impostare un progetto Flex usando l'integrazione Spring + BlazeDS lavorando attraverso la refcard gentilmente pubblicata da James Ward su refcards.dzone.com.
Alcuni problemi / sfide stanno sporgendo la testa. La distribuzione Tomcat sta andando bene, tutti i file si trovano sul server e posso convocare main.swf tramite il browser.
Ottengo la seguente eccezione di ActionScript quando provo a inviare la richiesta AMF a Spring / BlazeDS:
Errore RPC faultString = " Invio non riuscito " FaultCode = " Client.Error.MessageSend " faultDetail = " Channel.Connect.Failed errore NetConnection.Call.Failed: HTTP: Non riuscito: url: " http: // localhost: 8080 / blazeds / spring / messagebroker / amf " " ;
Quando si posiziona " Fallito: url: " URL direttamente nel browser, Tomcat visualizza il seguente messaggio di errore:
Stato HTTP 404 - Servlet Spring MVC Servlet Dispatcher non disponibile
Ho installato tutti i file come indicato da James Ward sulla sua refcard, application-config.xml, web.xml e services-config.xml sono tutti in ordine per quanto posso vedere.
Qualche idea su cosa sto rovinando?
PS: sto notando piccoli cambiamenti in termini di refcard di James e del rilascio stabile dell'integrazione. C'è qualcosa che è cambiato dopo la versione M2 che potrebbe mordermi dietro?
Soluzione 3
Risponderò alla mia domanda, tutto si riduce a me essere il manichino. Lì dove alcuni .jar che non ho incluso nella mia cartella WEB-INF / lib. Li ho copiati dai blazeds + test di integrazione della primavera e questo ha risolto il mio problema!
Altri suggerimenti
Ho lo stesso problema e l'ho risolto aggiungendo backport-util-concurrent.jar e cfgatewayadapter.jar dal test-drive-sample dell'integrazione flex-spring, grazie josamoto per il tuo post, finalmente l'integrazione funziona bene.
saluti
Se segui la scheda di riferimento il tuo URL sarebbe http: // localhost: 8080 / DZone server / primavera / messagebroker / amf . La root di contesto nella scheda di riferimento è dzone-server.
Il passaggio chiave è assicurarsi che l'URL sopra corrisponda all'URL dell'endpoint definito in services-config.xml. Quindi l'endpoint corrispondente per l'URL sopra riportato sarebbe:
<endpoint url="http://{server.name}:{server.port}/{context.root}/spring/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint"/>
Nota: questo è quasi il valore predefinito aggiunto creando un nuovo progetto flex in Flex Builder tranne per il fatto che ha primavera aggiunto all'URL dell'endpoint.