Newsgroup: it.comp.java
Titolo: Chiarezza sui pacchetti java

Salve a tutti ,
sto utilizzando jdk-7u1-nb-7_0_1 per sviluppare un'applicazione che gestisce un DB
andando ad utilizzare 
TypedQuery <Anagrafica> tq = em.createQuery("SELECT...",Anagrafica.class);
mi dà errore perchè sembra che non esiste il metodo createQuery overloaded nel modo sopra. Allorchè pensando che stia utilizzando una versione vecchia , scarico ed installo jdk-7u3-nb-7_1_1,  questa però oltre a non risolvermi il problema sopra mi dice che non supporta più il framework di swing , con la conseguenza che non è più possibile creare in maniera rapida gli oggetti rapidi.
Scarico ed installo anche la versione JAVA EE6 ma apparte che mi installa glassfish che non mi occorre per nulla .
Eppure il metodo cosi scritto createQuery(string, Class) esiste nel reference di java ee6. 
Datemi delle delucidazione che non sò dove mettere le mani :-)


non so con esattezza cosa tu stia facendo perché non uso netbeans, in 
ogni caso jpa non è incluso nella java standard edition. se il target del 
programma non è una tecnologia jee (come mi pare di capire, visto che 
glassfish non ti occorre per nulla) allora dovrai scegliere una 
implementazione di jpa fra le varie (hibernate, eclipselink, 
datanucleous, toplink, etc...) e integrarla nella tua applicazione. 
 


Allora, innanzitutto grazie della risposta.
Il fatto che non sia inclusa nella jdk mi sta bene , però spiegami per quale motivo la il metodo createQuery(string) c'è ! manca la versione overloaded createQuery(string,class)!! questo è strano se non ci fosse jpa non ci dovrebbe essere neanche entitymanager, che invece utilizzo.
 
Ti spiego meglio quello che mi occorre : sto realizzando un gestionale su db mysql, circa 10 anni fa quando ancora programmavo in java utilizzavo la classe sql...ora che son passati gli anni e si preferisce l'approccio alle tabelle come oggetti ed ho scoperto che esiste jpa, mi sono detto se ne devo realizzare uno nuovo allora utiliziamo la tecnologia più moderna...
Quidni mi occorre il supporto a jpa, al tempo stesso mi occorre un framework funzionale che mi permetta di creare con facilità dgli oggetti grafici , e poichè sul sito java c'è netbeans uso quello, però se ne conosci altri validi che mi permettano questo utilizzo ben venga..."fammi luce"
ciao


inoltre volevo dirti che il pacchetto jdk7u3_ide7.1.1  sembra che possegga sia see che il supporto alle swing framework...
http://netbeans.org/features/index.html
 
non ci capisco nulla .....


così tanto per essere precisi ho verificato e la mia piattaforma è configurata bene, sono andato a vedere e il metodo createQuery(string,class) esiste
però quando eseguo questo
TypedQuery<AnagraficaClienti> q2 = em.createQuery("SELECT c FROM Country c", AnagraficaClienti.class);
 
mi becco questo errore 
 
method createQuery in interface javax.persistence.EntityManager cannot be applied to given types;
  required: java.lang.String
  found: java.lang.String,java.lang.Class<agencymanager.entities.AnagraficaClienti>
  reason: actual and formal argument lists differ in length
 
PERCHHEE??????

 mi becco questo errore
 
Errore a parte, che sembra dovuto a una versione errata di EE, lo sai 
vero che Netbeans ha dei WIZARD proprio per utilizzare jpa, per i quali 
non devi scrivere neanche 1 riga di jpql ma ti crea tutto lui?
 
Vedi per esempio: 
http://wiki.netbeans.org/SimpleJPAApplicationWithNetbeans
 
 
e se googli "netbeans jpa tutorial", trovi parecchio.
 
Certo va bene se ne fai un utilizzo piuttosto semplice, ma se sei agli 
inizi in questo campo te lo consiglio, e' un buon punto di partenza, 
perche' vedi come Netbeans si organizza le classi, che non e' male.
 
Ciao.

 createQuery(string,class)!! 
 
non ho tempo di indagare le differenze fra le versioni jpa ma è evidente 
che nel tuo classpath di netbeans hai una versione di cui stai guardando 
la documentazione. in altre parole non hai il controllo del tuo ambiente 
di sviluppo e purtroppo questa è una delle insidie che nascondono gli 
strumenti integrati come netbeans a chi non li conosce bene. dovessi 
darti un consiglio su come andare avanti ti direi di usare maven per 
riprenderti il controllo delle dipendenze, chiaramente bisogna conoscere 
maven e saperlo integrare con l'ide (ma se non ricordo male nb ci va 
abbastanza d'accordo).


Ciao grazie della risposta, si effettivamente so che con NetBeans si possono creare le EntityClass in maniera del tutto automatico, ma nel mio caso devo creare delle query personalizzate, quindi devo fare a "manovella"...seguirò comunuque il tuo consiglio e googlerò...ciao



HO TROVATO L'INGHIPPO !!!!e tutto è dipeso dall'aumatismo smisurato che fà prendere a NetBeans "delle libertà non richieste"!!!
Ti spiego, nella sezione delle librerie oltre al pacchetto Eclipse JPA2.0 di cui conosco la documentazione, c'erano i pacchetti TopLink che non hanno tutte le classi complete come il suddetto pacchetto. La cosa secondo me inaccettabile è che il compilatore o comunuque l'editor trova la prima classe a disposizione e non vede che la stessa c'è anche in altri pacchetti (ma con metodi differenti). A sto punto sarebbe stato il caso che o non mi metteva nessun pacchetto di default ed ero io a sceglierlo, oppurre che mi da un warning o che in caso di duplicazione di classi mi fa scegliere quale adoperare....
 
Grazie a tutti per l'ausilio
...a presto