Home Artykuły Java Eclipse 3.5+JPA+Dali plugin+Postgres problem z wielkością liter w nazwach tabiel

Eclipse 3.5+JPA+Dali plugin+Postgres problem z wielkością liter w nazwach tabiel

Eclipse 3.5+JPA+Dali plugin+Postgres problem z wielkością liter w nazwach tabiel

      Podczas ostatniej pracy z Eclipse w wersji 3.5  oraz pluginem Dali jako narzedziem do JPA napotkałem się nieoczekiwanie na dziwny błąd, który zepsuł mi nastój na całą dobę.  Ostatnio miałem same pozytywne wrażenia z połączenia technologii : Windows Mobile -> SOAP -> JAX-WS -> EJB3 ->JPA -> Baza danych. Jednak, tym razem, doznałem bolesnej porażki.  Chciałem nazwać tabele w bazie danych  tak samo jak encje czyli "Contact" . Mimo poprawnie zdefiniowanej klasy encji, project JPA nie chciał przejść walidacji. Oto fragment komunikatu blędu, który przeczytałem w widoku "Problems" Eclipsa : "Table "Contact" cannot be resolved    Contact.java ...."

 

dali01

Tym bardziej bylem zdziwiony, że nie było podpowiedzi w autouzupiełnianiu nazwy tabeli pluginu Dali. Rozwiązanie znalazlem dopiero następnego dnia wpisując do google zapytanie "eclipse dali plugin and case character in the table's name" . Znalazłem ciekawy artykuł "Reverse Engineer JPA Entities with Eclipse 3.3 and MySQL", a konkretnie ciekawe zdanie w nim:

Something that gave me a hard time is that for some funky reason the table names must be all in lower case. If tables names are in mixed case the relationships will not be discovered during the reverse engineering process. During my experimentation I discovered that the Middlegen docs give a warning about this, so I am guessing that the Eclipse DALI plugin uses Middlegen under the covers. The MySQL engine should also be INNODB.

Do tej pory ja stosowałem w nazwach tabel wylącznie małe litery. Wczoraj postanowiłem zerwać z tą zaszłością hystoryczną i nazywać tabele zgodnie z konwencją nazewnictwa klas firmy SUN n.p. ContactItem. No może nie tak od razu, bo mój ulubiony plugin Dali w wersji wersji 2.2.1 jeszcze nie potrafi prawidłowo działać w przypadku mieszanej wiełkości w nazwach tabel oraz jeśli nazwa złożona jest wyłącznie z dużych liter. Po przemianowaniu tabeli "Contact" w "contact" wszystko już bylo OK. Ale trzeba było jeszcze zmienić nazwe dla sekwencji z "Contact_id_seq"  na "contact_id_seq", żeby nie używać adnotacji @SequenceGenerator

 

 

Komentarze  

 
0 #17 BoilsHtf 2021-06-02 09:08
cialis black cialis online in canada buy cialis information
Cytować
 
 
0 #16 BoilsAni 2021-06-01 05:35
turkey pharmacy online online pharmacies Kamagra Gold
Cytować
 
 
0 #15 infatAsd 2021-06-01 01:18
cialis 20 mg for sale cialis 20mg uk sfter market cialis
Cytować
 
 
0 #14 BoilsAni 2021-05-26 08:27
canada drugs winnipeg mb canada https://pharmacyken.com/ - canadian pharmacy phentermine Trimox
Cytować
 
 
0 #13 JebgBoils 2021-05-25 06:10
legal canadian pharmacy online https://pharmacylo.com/ reputable online pharmacy uk
Cytować
 
 
0 #12 LebnBoils 2021-05-21 23:07
Zenegra http://xlnpharmacy.com/ cheap scripts pharmacy
Cytować
 
 
0 #11 FmrfBoils 2021-05-19 19:08
cialis cheaper https://cialisee.com/ cialis legal purchase
Cytować
 
 
0 #10 JebgBoils 2021-05-14 05:14
discount pharmaceuticals https://pharmacylo.com/ diabetes
Cytować
 
 
0 #9 AbdgBoils 2021-05-01 10:51
cholesterol https://canadianeve21.com/ Cabgolin
Cytować
 
 
0 #8 BbdfZoow 2021-05-01 00:41
what does viagra do http://gensitecil.com/ best viagra
Cytować
 

Dodaj komentarz


Kod antysapmowy
Odśwież