Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[JavaServerFaces] Aiuto inizio studio??

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Triumph Of Steel, archimede

Postdi giack83 » 05/04/07 09:19

dovrei chiedere una cosa.....

allora io ho il mio database contenente dei dati.
In eclipse ho il file confing-face(principale) e ora dovrei creare una classe in java per collegarmi con il database......

ho visto del codice di esempio tipo questo:
Codice: Seleziona tutto
Connection con = null;
      PreparedStatement st = null;
      ResultSet rs = null;
      
      try {
         con = PersistUtil.getConnection();
         
         // recupero alcuni dati che mi servono, realtivi all'ultimo record relativo al servizio del dipendente indicato
         st = con.prepareStatement(
               "select desc_qualif, desc_ente from servizio " +
               "\nwhere m1_mast_cod = ?" +
               "\nand categoria_giuridica = ?" +
               "\nand posizione_economica = ?" +
               "\nand fine_servizio = to_date('01/01/2200', 'DD/MM/YYYY')"
            );
            st.setString(1, voce.getCodiceMaster());
            st.setString(2, voce.getCategoriaGiuridica());
            st.setString(3, voce.getPosizioneEconomica());

            rs = st.executeQuery();
            
            String descQualif = null;
            String descEnte = null;
            
            if (rs.next()) {
               descQualif = rs.getString("desc_qualif");
               descEnte = rs.getString("desc_ente");
            }
            
            rs.close();
            st.close();

ma nn cè da scrivere anche l'indirizzo tipo C:\\....... e dare l'indirizzo del database ect??

Grazie.
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Sponsor
 

Postdi pjfry » 05/04/07 09:30

probabilmente a ci pensa quella PersistUtil.getConnetion(), dipende da dove hai trovato l'esempio :D

qui ci sono un po' di esempi: http://it.wikipedia.org/wiki/JDBC
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

Postdi giack83 » 05/04/07 10:24

infatti,

pero PersistUtil.getConnetion() me la da sottolineata e dice "cannot be resolved"

xche??
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

iBatis

Postdi infinito1971 » 12/04/07 12:37

Ciao giack,
visto che usi Java, perchè non provi ad utilizzare iBatis??
Io l'ho utilizzato in accoppiata con Struts e l'ho trovato a dir poco eccezionale... ;)

Un saluto,
infinito1971
Questo business è binario: o sei 1 o sei 0, vivo o morto, non esistono secondi classificati!
Avatar utente
infinito1971
Utente Senior
 
Post: 531
Iscritto il: 01/08/02 21:22
Località: Napoli

Postdi giack83 » 16/04/07 07:39

Salve, scusa se ti rispondo solo ora...

cmq utilizzo Eclipse perche diciamo che son costretto ecco, effettuando il tirocinio devo utilizzare i programmi installati.....
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Tutorial iBatis

Postdi infinito1971 » 16/04/07 10:07

Ciao giack,
certo, anch'io utilizzo Eclipse per sviluppare, il consiglio che ti ho dato per iBatis riguarda il mappaggio dei tuoi oggetti con il db...
Per capire meglio di cosa si tratta di consiglio di dare uno sguardo all'ottimo tutorial di Gian Lorenzo Meocci che puoi trovare qui.

Un saluto,
infinito1971
Questo business è binario: o sei 1 o sei 0, vivo o morto, non esistono secondi classificati!
Avatar utente
infinito1971
Utente Senior
 
Post: 531
Iscritto il: 01/08/02 21:22
Località: Napoli

Postdi giack83 » 17/04/07 07:58

Ok grazie ora ci do una occhiata..... :)
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi giack83 » 17/04/07 09:29

Una domanda. Spero di farmi capire :)

Allora nel file "home.jsp" ho questo codice per la creazione di un pulsante:


Codice: Seleziona tutto
<h:commandButton value="puls" actionListener="#{manager.test}"/>



dove in manager ho:


Codice: Seleziona tutto
public void test(ActionEvent event) {
      List l = PersistUtil.getElenco("select v from Via v", null, 100);
      System.out.println(l.get(0));
   }



dove a sua la classe manager ha il collegamento con "persistUtil.getElenco" dove c'è:

Codice: Seleziona tutto

public static List getElenco(String selectQuery, List parametri, int maxResults) {
       Session session = null;
       
       try {
          session = getSession();
          if (session == null) return null;
          Query qry = session.createQuery(selectQuery);
          if (maxResults > 0) qry.setMaxResults(maxResults);
          
          if (qry == null) {
             log.error("Errore durante la lettura dell'elenco: la query è null");
             return null;
          }
          else {
             if (parametri != null) for (int currPar = 0; currPar < parametri.size(); currPar ++) qry.setParameter(currPar, parametri.get(currPar));
             
             return qry.list();
          }
       } catch (Exception e) {
          log.error(e); return null;
          }
       finally { try { session.close(); } catch (Exception e) { log.error(e); return null; } }
    }







Nel mio local host di tomcat quando nella pagina clicco sul pulsante creato mi restituisce questo errore:

avax.servlet.ServletException: Exception while invoking expression #{manager.test}
javax.faces.webapp.FacesServlet.service(FacesServlet.java:154)
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)




ma perche?
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi pjfry » 17/04/07 10:04

hai un file che si chiama faces-config.xml? manager.java è un managed bean definito in quel file?
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

Postdi giack83 » 17/04/07 10:11

allora dentro ad faces-confing ho:

Codice: Seleziona tutto
<faces-config>

   <application>
      <locale-config>
         <default-locale>it</default-locale>
      </locale-config>
   </application>
   
   <managed-bean>
      <managed-bean-name>manager</managed-bean-name>
      <managed-bean-class>................Manager</managed-bean-class>
      <managed-bean-scope>session</managed-bean-scope>
   </managed-bean>
   
   <navigation-rule>
      <from-view-id>/pages/home.jsp</from-view-id>
      <navigation-case>
         <from-outcome>next</from-outcome>
         <to-view-id>/pages/next.jsp</to-view-id><redirect />
      </navigation-case>
   </navigation-rule>
   
</faces-config>
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi pjfry » 17/04/07 10:28

uhm... boh!? :D

se invece di usare un actionListener usi una action dà lo stesso errore?

prova
Codice: Seleziona tutto
<h:commandButton value="puls" action="#{manager.test}"/>


Codice: Seleziona tutto
public String test() {
      List l = PersistUtil.getElenco("select v from Via v", null, 100);
      System.out.println(l.get(0));
return "";
   }
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

Postdi giack83 » 17/04/07 10:39

Ora mi dice:
Codice: Seleziona tutto
javax.servlet.ServletException: Error calling action method of component with id form:_idJsp0
   javax.faces.webapp.FacesServlet.service(FacesServlet.java:154)
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi pjfry » 17/04/07 10:55

ma l'eccezione sono solo quelle 3 righe o c'è altro?
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

Postdi giack83 » 17/04/07 11:04

Ti metto tutto:
Codice: Seleziona tutto
EXCEPTION
javax.servlet.ServletException: Exception while invoking expression #{manager.test}
   javax.faces.webapp.FacesServlet.service(FacesServlet.java:154)
   org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)

root cause

ROOT CAUSE
javax.faces.el.EvaluationException: Exception while invoking expression #{manager.test}
   org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:156)
   javax.faces.component.UICommand.broadcast(UICommand.java:89)
   javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)
   javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)
   org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
   org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
   org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
   javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
   org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)

root cause

ROOT CAUSE
java.lang.ExceptionInInitializerError
   it.fc.cesena.comune.dativia.persistenza.PersistUtil.<clinit>(PersistUtil.java:28)
   it.fc.cesena.comune.dativia.Manager.test(Manager.java:98)
   sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   java.lang.reflect.Method.invoke(Unknown Source)
   org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)
   javax.faces.component.UICommand.broadcast(UICommand.java:89)
   javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)
   javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)
   org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
   org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
   org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
   javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
   org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)

ROOT CAUSE
org.hibernate.InvalidMappingException: Could not parse mapping document from resource it/fc/cesena/comune/dativia/CatastoStradeComunali.hbm.xml
   org.hibernate.cfg.Configuration.addResource(Configuration.java:569)
   org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1587)
   org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1555)
   org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1534)
   org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1508)
   org.hibernate.cfg.Configuration.configure(Configuration.java:1428)
   org.hibernate.cfg.Configuration.configure(Configuration.java:1414)
   it.fc.cesena.comune.dativia.persistenza.PersistUtil.<clinit>(PersistUtil.java:24)
   it.fc.cesena.comune.dativia.Manager.test(Manager.java:98)
   sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   java.lang.reflect.Method.invoke(Unknown Source)
   org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)
   javax.faces.component.UICommand.broadcast(UICommand.java:89)
   javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)
   javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)
   org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
   org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
   org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
   javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
   org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)

ROOT CAUSE
org.hibernate.InvalidMappingException: Could not parse mapping document from input stream
   org.hibernate.cfg.Configuration.addInputStream(Configuration.java:508)
   org.hibernate.cfg.Configuration.addResource(Configuration.java:566)
   org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1587)
   org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1555)
   org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1534)
   org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1508)
   org.hibernate.cfg.Configuration.configure(Configuration.java:1428)
   org.hibernate.cfg.Configuration.configure(Configuration.java:1414)
   it.fc.cesena.comune.dativia.persistenza.PersistUtil.<clinit>(PersistUtil.java:24)
   it.fc.cesena.comune.dativia.Manager.test(Manager.java:98)
   sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   java.lang.reflect.Method.invoke(Unknown Source)
   org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)
   javax.faces.component.UICommand.broadcast(UICommand.java:89)
   javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)
   javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)
   org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
   org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
   org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
   javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
   org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)

ROOT CAUSE
org.dom4j.DocumentException: Error on line 8 of document  : Element type "id" must be followed by either attribute specifications, ">" or "/>". Nested exception: Element type "id" must be followed by either attribute specifications, ">" or "/>".
   org.dom4j.io.SAXReader.read(SAXReader.java:482)
   org.hibernate.cfg.Configuration.addInputStream(Configuration.java:499)
   org.hibernate.cfg.Configuration.addResource(Configuration.java:566)
   org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1587)
   org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1555)
   org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1534)
   org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1508)
   org.hibernate.cfg.Configuration.configure(Configuration.java:1428)
   org.hibernate.cfg.Configuration.configure(Configuration.java:1414)
   it.fc.cesena.comune.dativia.persistenza.PersistUtil.<clinit>(PersistUtil.java:24)
   it.fc.cesena.comune.dativia.Manager.test(Manager.java:98)
   sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   java.lang.reflect.Method.invoke(Unknown Source)
   org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)
   javax.faces.component.UICommand.broadcast(UICommand.java:89)
   javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)
   javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)
   org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
   org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
   org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
   javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
   org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi pjfry » 17/04/07 11:21

L'eccezione devi leggerla fino in fondo: jsf ti dice che c'è un errore chiamando il metodo 'test', poi però ci sono altri errori che dipendono dall'inizializzazione di PersistUtil.
potrebbe essere questo:
Codice: Seleziona tutto
org.dom4j.DocumentException: Error on line 8 of document : Element type "id" must be followed by either attribute specifications, ">" or "/>". Nested exception: Element type "id" must be followed by either attribute specifications, ">" or "/>".

un errore alla riga 8 del file CatastoStradeComunali.hbm.xml?
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

Postdi giack83 » 17/04/07 11:31

l'errore di quella riga l'ho risolto, era un errore di spazi...

pero mi ricompare la stessa cosa in tomcat....

quindi è perche PersistUtil è inizializzato in modo errato?
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi pjfry » 17/04/07 11:37

direi di si, per esserne sicuro prova a togliere la chiamata a persistutil e lascia solo la system.out :)
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

Postdi giack83 » 17/04/07 11:48

Ok appena posso provo. Se ho problemi poi domani mattina ti faccio sapere. Grazie.
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi giack83 » 18/04/07 07:57

Me lo hai tolto tu il messaggio sbagliato?

Cmq, allora ho tolto la chiamata ad PersistUtil ma pero nella system.out cè la variabile " L " che è relativa alla chiamata sopra.

QUindi mi da errore in system.out.......
giack83
Utente Junior
 
Post: 53
Iscritto il: 22/11/04 16:50
Località: forli-cesena

Postdi pjfry » 18/04/07 08:35

beh insomma il metodo lo chiama, quindi non è un errore di faces.
a questo punto o ti metti a studiare hibernate (ancora non ho capito dove hai preso quella persistUtil ) oppure cambi il modo di gestire la persistenza :)
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

PrecedenteProssimo

Torna a Programmazione


Topic correlati a "[JavaServerFaces] Aiuto inizio studio??":

Aiuto urgente!!!
Autore: templare77
Forum: Software Windows
Risposte: 0

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti