Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    10

    [Java e SOAP] Configurazione e utilizzo

    Salve a tutti!
    Premetto che io ci ho provato..
    ho seguito e letto tutte le guide ho provato e riprovato, è tutta la sera che sul forum cerco discussioni simili (l'unica che ho trovato e di uno che ha risolto da solo prima che gli dessero la soluzione loro), se avete link da consiglarmi fatelo vi prego, ma non sono riuscito a far funzionare soap.. e sono abbastanza disperato

    Devo fare un web server che mi permetta di prenotare biglietti (è richiesto specificatamente l'uso di tomcat e soap) e quindi come prima cosa sto cercando di installare e configurare il sistema.
    Purtroppo io non ho molta dimestichezza con webserver e affini e trovo un'enorme difficolta ad abituarmi a questo nuovo modo di programmare. ma vado a spiegare la mia situazione.

    Intanto ho un macchina virtuale creata con VMWare con "WinXP pro" installato senza nessun altro programma (ho creato apposta un ambiente vuotoal quale mi collegherò per testare il webserver)

    - Ho installato il "JDK SE 6.11 Development Kit" (che contiene anche il netbeans 6.5) con successo anche se ho dovuto installare il "Windows Installer" da internet
    - Ho installato l' "Apache Tomcat 5.5.27" e funziona tutto benissimo

    ora tocca al Soap e iniziano i problemi:

    Ho scaricato:
    - SOAP 2.3
    - Xalan 2.7.1 (dove ho trovato xml-apis.jar e un xercesImpl.jar)
    - jaf 1.0.2
    - javamail 1.4.1

    poi ho seguito le istruzioni trovate qui che sembrano fare esattamente al caso mio http://java.html.it/articoli/leggi/2...tomcat-e-soap/
    Ho copiato tutte le cartelle in programmi e ho copiato il file soap.war dentro webapps di tomcat

    Fino ad arrivare al punto di dover inserire il CLASSPATH.
    Intanto tra le variabili d'ambiente non c'era e quindi l'ho dovuto creare io a mano completametne (mi sembrava che il java quando si installava lo metteva da solo.. boh..)
    attualmente il mio CLASSPATH è così strutturato:
    Nome Variabile: CLASSPATH
    Valore Variabile: C:\Programmi\Java;C:\Programmi\Java\lib;C:\Program mi\soap\lib\soap.jar;C:\Programmi\javamail\mail.ja r;C:\Programmi\javaaf\activation.jar;C:\Programmi\ xalan\xml-apis.jar;C:\Programmi\xalan\xercesImpl.jar;C:\Prog rammi\xalan\xalan.jar;C:\Programmi\xalan\serialize r.jar

    - Nella guida non ho capito cosa significa "...della libreria, nome "CLASSPATH:%CLASSPATH%;C:\soap..."

    fatto sta che quando apro la pagina di Soap Admin funziona ma se vado su List su Deploy o Un-Deploy mi da errori di tipo 500

    nello specifico l'errore è questo:
    codice:
    org.apache.jasper.JasperException: Unable to compile class for JSP:
    Sono stato un pò prolisso ma ho cercato di essere il più preciso possibile...
    Adesso spiegatemi.. dove è che ho sbagliato?

    Grazie per la pazienza che avete con uno alle prime armi!

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [Java e SOAP] Configurazione e utilizzo

    Premetto che non conosco (ancora ) i web service, SOAP, ecc.... ma ti posso dare alcune informazioni a livello generale.

    Originariamente inviato da foxluke
    Nome Variabile: CLASSPATH
    Valore Variabile: C:\Programmi\Java;C:\Programmi\Java\lib;C:\Program mi\soap\lib\soap.jar;C:\Programmi\javamail\mail.ja r;C:\Programmi\javaaf\activation.jar;C:\Programmi\ xalan\xml-apis.jar;C:\Programmi\xalan\xercesImpl.jar;C:\Prog rammi\xalan\xalan.jar;C:\Programmi\xalan\serialize r.jar
    Nota che mettere in CLASSPATH C:\Programmi\Java e C:\Programmi\Java\lib non serve a nulla.

    Originariamente inviato da foxluke
    - Nella guida non ho capito cosa significa "...della libreria, nome "CLASSPATH:%CLASSPATH%;C:\soap..."
    No niente ... semplicemente %CLASSPATH% rappresenta il contenuto della variabile CLASSPATH. Avrebbe senso se metti qualcosa in CLASSPATH a livello di variabile di "sistema" e poi nelle variabili del tuo "utente" metti %CLASSPATH%;...altro... che appunto aggiunge.

    Originariamente inviato da foxluke
    nello specifico l'errore è questo:
    codice:
    org.apache.jasper.JasperException: Unable to compile class for JSP:
    Hai messo in PATH la directory 'bin' del JDK?? Questo, in generale, è sempre bene farlo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    ciao,

    consiglio sempre di usare un JDK e non un JRE (vedi anche http://mail-archives.apache.org/mod_...1.yahoo.com%3E).
    ALtra cosa: SOAP 2.3 è un progetto morto e defunto da un sacco di tempo, non c'è motivo per usarlo per creare nuovi Web Services.

    O usi direttamente JaxWs (che fa parte di Java 6, ma per questo usa il JDK!) oppure usa Axis 2 o un altro framework di terze parti...

    ciao
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    10
    ALtra cosa: SOAP 2.3 è un progetto morto e defunto da un sacco di tempo, non c'è motivo per usarlo per creare nuovi Web Services.
    Purtroppo devo fare un progetto per l'uni non è un servizio realmente utilizzato se non a scopo didattico e mi viene chiesto di utilizzare proprio il Tomcat con SOAP.
    Detto sinceramente questo ambito lo sto studiando ora e ne sono totalmente all'oscuro.. Conosco abbastanza poco anche della programmazione in Java per quanto riguarda database e servizi di questo genere. Ho sempre fatto programmi piuttosto semplici con esso.

    consiglio sempre di usare un JDK e non un JRE
    Nella cartella java ho installati tutti e due.. basta che uso gli strumenti presenti nella cartella JDK invece che quelli in JRE ho capito bene?


    Hai messo in PATH la directory 'bin' del JDK?? Questo, in generale, è sempre bene farlo.
    ora il mio PATH è così costituito:
    Nome Variabile: PATH
    Valore variabile: %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\Sy stem32\Wbem;C:\Programmi\Java\jdk1.6.0_11\bin

    Ma il problema è rimasto lo stesso... uff....

  5. #5
    scusa se insisto: ma inizialmente tu dici che ti è stato detto di usare tomcat con soap. Sei sicuro che la specifica sia "usare il framework SOAP" e non "usare il protocollo SOAP per lo scambio di messaggi"? Nell'ultimo caso puoi usare un qualsiais framework...

    Per il problema di tomcat, a ben guardare il messaggio postato è troppo generico. prova a postare lo stack trace completo dell'eccezione!
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    10
    ma inizialmente tu dici che ti è stato detto di usare tomcat con soap. Sei sicuro che la specifica sia "usare il framework SOAP" e non "usare il protocollo SOAP per lo scambio di messaggi"
    hihiih si forse sono cretino io... mannaggia queste cose ancora mi sanno ostiche.. non va bene! in effetti il progetto richiede "JAVA/SOAP su piattaforma a scelta".. Il fatto che in aula abbiamo usato proprio il SOAP 2.3 mi ha tratto in inganno..

    cmq ora riporto l'errore che ad esempio mi da se clicco su LIST. (non ho messo lo stacktrace intero che era parecchio lungo.. mi sono limitato a ciò che mi compare sul browser)
    se riesco a risolverlo bene... cmq comincio a provare altro anche se ora mi stavo abituando all'idea del SOAP.. meglio AXIS o l'altro JaxWs.. dovrò mettermi a cercare informazioni di nuovo.. avete link interessanti per caso?

    errore che mi si presenta:

    codice:
    HTTP Status 500 - 
    type             Exception report  
    message  
    description     The server encountered an internal error () that prevented it from fulfilling this request.  
    exception       org.apache.jasper.JasperException: Unable to compile class for JSP:    
    
    An error occurred at line: 7 in the generated java file Only a type can be imported. org.apache.soap.Constants resolves to a package  
    
    An error occurred at line: 6 in the jsp file: /admin/list.jsp Constants.CONFIGFILENAME cannot be resolved to a type 
    3: <h1>Service Listing</h1> 
    4:  
    5: <%  
    6:   String configFilename = config.getInitParameter(Constants.CONFIGFILENAME); 
    7:   if (configFilename == null) 
    8:     configFilename = application.getInitParameter(Constants.CONFIGFILENAME); 
    9:   
    
     An error occurred at line: 8 in the jsp file: /admin/list.jsp Constants.CONFIGFILENAME cannot be resolved to a type 
    5: <%  
    6:   String configFilename = config.getInitParameter(Constants.CONFIGFILENAME); 
    7:   if (configFilename == null) 
    8:     configFilename = application.getInitParameter(Constants.CONFIGFILENAME); 
    9:  
    10:   ServiceManager serviceManager = 
    11:    
    org.apache.soap.server.http.ServerHTTPUtils.getServiceManagerFromContext(application, configFilename);   
    
    An error occurred at line: 10 in the jsp file: /admin/list.jsp ServiceManager cannot be resolved to a type 
    7:   if (configFilename == null) 
    8:     configFilename = application.getInitParameter(Constants.CONFIGFILENAME); 
    9:  
    10:   ServiceManager serviceManager = 
    11:     org.apache.soap.server.http.ServerHTTPUtils.getServiceManagerFromContext(application, configFilename); 
    12:  
    13:   String[] serviceNames = serviceManager.list ();   
    
    An error occurred at line: 11 in the jsp file: /admin/list.jsp org.apache.soap.server.http.ServerHTTPUtils cannot be resolved to a type 
    8:     configFilename = application.getInitParameter(Constants.CONFIGFILENAME); 
    9:  
    10:   ServiceManager serviceManager = 
    11:     org.apache.soap.server.http.ServerHTTPUtils.getServiceManagerFromContext(application, configFilename); 
    12:  
    13:   String[] serviceNames = serviceManager.list (); 
    14:   if (serviceNames.length == 0) {   
    
    Stacktrace: 	org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:93)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) 	
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435) 	
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:298) 	
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:277) 	
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:265) 	
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564) 	
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:302) 	
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329) 	
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) 	
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)  
    
    note              The full stack trace of the root cause is available in the Apache Tomcat/5.5.27 logs.

  7. #7
    allora: il tuo tomcat è tutto ok. Il problema è nella tua webapp (si chiamano così le applicazioni web di java).

    Non hai nel classpath la classe Constants (da cui riferisci Constants.CONFIGFILENAME; ma mancheranno di certo anche altre classi!! ).
    Le classi devono stare o sotto WEB-INF/classes della tua webapp oppure dentro un file jar dentro WEB-INF/lib

    Per JAX-WS puoi partire da http://java.sun.com/developer/techni...J2SE/jax_ws_2/
    Per Axis 2 parti da http://ws.apache.org/axis2/. Lì trovi una user guide e altri documenti.

    In bocca al lupo
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    10
    eccomi qua... dopo tanto tempo in cui avevo abbandonato l'idea di fare questo webservice ora mi ritrovo a sbatterci la testa.. e sono esattamente punto daccapo! dove eravamo rimasti? ah si!

    dunque mi da questo errore che non sono ancora riuscito ad evitare.. dunque:
    il tomcat tutto a posto e siamo d'accordo...

    Non hai nel classpath la classe Constants (da cui riferisci Constants.CONFIGFILENAME; ma mancheranno di certo anche altre classi!! ). Le classi devono stare o sotto WEB-INF/classes della tua webapp oppure dentro un file jar dentro WEB-INF/lib
    questa parte proprio non l'ho capita.. io ho una 10ina di WEB-INF suppongo tu intenda quella del soap (che viene costruita da tomcat leggendo il file .war) ma non credo sia una soluzione cambiare di posto a tutte le librerie... e poi nessuna guida che ho trovato su google riporta questa cosa..

    o c'è un problema di classpath... attualmente la mia configurazione (leggermente cambiata dall'ultimo post) è questa qui: Easyphp2.0 installato e perfettamente funzionante, jdk 1.6 installata e funzionante, tomcat installato e funzionante (questa volta l'ho lasciato installare da netbeans), libreri mail.jar ecc.. sono ognuna in una cartella separata e tutte aggiunte al classpath.. il classpath è il seguente:

    C:\Programmi\xerces\xercesImpl.jar; C:\Programmi\Java\jdk1.6.0_14; C:\Programmi\Java\jdk1.6.0_14\lib\tools.jar; C:\Programmi\jaf\activation.jar; C:\Programmi\javamail\mail.jar; C:\Programmi\xerces\xml-apis.jar; C:\Programmi\xerces\resolver.jar; C:\Programmi\xerces\serializer.jar; C:\Programmi\xerces\xercesSamples.jar; C:\Programmi\mysql-connector-java-5.1.3.jar

    megliu abbondare... ho messo anche le cose che magari non servono.. ma almeno non posso dire che manca qualcosa

    eppure niente l'errore non ve lo ripeto perchè è essattamente quello di qualche post più sopra...
    attendo aiuti!! grazie!!!!

  9. #9
    restano valide le indicazioni date.
    Studiati come funzionano le webapp e scoprirai che il classpath viene settato come ti ho detto.
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    10
    Ok.. rischierò di fare la figura del fesso ma ormai non mi interessa più...
    abbiate pensienza!

    mettiamo caso che la mia webbapp non funzioni...
    o non sia nella cartella WEB-INF allora quell'errore è normale? :master:

    cioè se il soap non trova nessuna applicazione da deployare allore ritorna quell'errore?
    oppure dovrebbe dirmi semplicemente: "guarda, non ci sono applicazioni valide"

    io penso sia la seconda.. e che non sia normale avere quell'errore in un ambiente appena installato...

    cmq la classe Constants che è una di quelle che lui dovrebbe stare cercando l'ho cercata... si trova in:
    "C:\Programmi\Apache Software Foundation\Apache Tomcat 6.0.18\webapps\soap\WEB-INF\classes\org\apache\soap"

    e non ce l'ho messa io...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.