EJB3 a Netbeans 5.0 a 5.5

2006-05-24 Tema obsahu Mirek Stohr

Vazeni kolegove,

v ramci pripravy sama sebe na EJB3 jsem provedl nasledujici experiment:

1/ Vytvoril jsem si projekt v Netbeans 5.0 (s naimportovanou knihovnou 
javaee.jar obsahujici Java EE 1.5), ktery byl sice oznacen jako java 
aplication ale svou strukturou vyhovoval Java EE 1.5. Zkompiloval, 
poskladal do patricneho earu, deployoval na Sun app. server 9.0 -- a 
nefunguje (viz. nize).
2/ Pokud jsem ale na tentyz projekt pouzil Netbeans 5.5 (tentokrat jiz 
byl projekt vytvoren jako Java Enterprise Application), zkompiloval, 
poskladal, deployoval na tentyz server ... a funguje. JDK je tataz 
(1.5.04), Sun app. server je tentyz.


Tj., co nechapu, co dela Netbeans 5.5 navic? Tj., presneji, co krome 
kompilace musim provest abych ziskal fungujici EE aplikaci vyhovujici 
specifikaci Java EE 1.5?


Pozn.: Projekt je nejjednodussi mozny: session stateless ejb HelloBean 
(s interface HelloLocal), ten je volan z jsf managed beanu asi takto:


@EJB
private HelloLocal hbean;

private String response;

public String sayHello(){
response = hbean.sayHello(mirek); //(*)
return ok;
}

na radku oznacenem (*) se v pripade 1 vyhodi NullPointerException.

HelloBean a HelloLocal ma v obou pripadech stejny kod. ear package je v 
obou pripadech co do struktury totez. Stejne application.xml, stejne 
web.xml, stejne faces-config.xml. Aplikace nejsou na serveru ve stejnou 
dobu obe dve, vzdy jenom jedna z nich. Kompilace se vzdy provadi se 
-source 1.5 -target 1.5. Deployment probehne v obou pripadech bez problemu.


Diky za objasneni ci napovedu.

  Mirek




Re: Swing a data binding

2006-05-24 Tema obsahu Benda Lukas
Tak uvazuju jestli ten mail vubec do konference dosel. Ano to jde udelat 
napriklad na to je Spring-RCP, jedna se o platformu urcenou prave pro 
vytvareni tlustych (bohatych) klientu.


Btw. to co za Vas dela Hibernate, nebo JDO delalo Delphi do znacne miry 
pomoci obektu Query resp. ClientDataSet. Prevadi databazova data na 
objekt. Presne to kdyz udelate tak balicek org.springframework.binding a 
jeho potomek org.springframework.binding.swing je presne na tohle urceny.


S pozdravem Lukas Benda

Rozumím,

lze nějak rozumně udělat DBMS - datový objekt - Swing bez aplikačního
serveru (tzn. na dvojvrstvé věci)? Protože JBuilder mě neláká a rád bych si
nechal zadní vrátka pro rozšíření aplikace na třivrstvou někdy v budoucnu.

Petr

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Behalf Of URBAN Leos
Sent: Friday, May 19, 2006 8:22 AM
To: Java
Subject: Re: Swing a data binding


Zdravím,

to, co existovalo v VisualBasicu (a Delphi) najdete v JBuilderu.

Tam si připojíte datový zdroj definicí přes JDBC, na formulář naklikáte
speciální swingové objekty dbSwing co mají vlastnosti dataSet a
columnName, nahoru dáte toolbar s tlačítky first, next, edit,... (nebo
si to obsloužíte sám) a je to.

Viz
http://pipin.tmd.ns.ac.yu/extra/java2/libs/dbswing/ref/dbswing/Package-com.b
orland.dbswing.html

JBuilder není zadarmo ale toto funguje i s tou jejich start verzí která
je pro nekomerční použití zadarmo takže to můžete aspoň vyzkoušet.

Uvedený postup je proprietární postup Borlandu takže pak jste navěky
svázáni s JBuilderem.

Já to jen kdysi zkoušel. Protože se zabývám EJB3 (tj. 3 vrstevnou
architekturou) by mi toto nebylo k ničemu.

Leoš


Petr Zajíc napsal(a):
  

Totiž, zatím se v tom docela solidně technologicky ztrácím.

Vize je asi taková: Existuje nějaká historická dvojvrstvá aplikace s
databází (MSSQL) a tlustým klientem (Visual Basic 6). Datábázi chce


zákazník
  

nechat tak jak je, ale klienta předělat do Javy (Swing).

Ve starém špatném Basicu to bylo tak, že ovládací prvky na formuláři


byly
  

vázány přímo na zdroj dat - recordset (v Javě ResultSet). Ten JGoodies
binding nicméně umožňuje pomocí swingu prezentovat data zase jen z


objektu.
  

Já musím udělat kolečko

databáze - cosi - prezentace dat ve Swingu
prezentace dat ve Swingu - cosi - databáze

Takže já vlastně asi potřebuju nejenom binding, ale i perzistenci.

Nakopne mě někdo správným směrem? Existuje nějaká kombinace technologií,
která mi umožní
a) použít současný návrh relační databáze
b) solidně namapovat databázová relační data na objekty
c) objekty prezentovat ve tlustém klientu (desktop-swing)

Těch možností je víc a mě by zajímalo, kdo má s čím zkušenosti.

Petr Zajíc

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Behalf Of Richard Malaschitz
Sent: Friday, May 19, 2006 12:00 AM
To: Java
Subject: Re: Swing a data binding


Mohli by ste napisat co ste si nakoniec vybrali a nejake mini-porovnanie ?


2006/5/16, Benda Lukas [EMAIL PROTECTED]:
Samozrejme napr; Spring RCP
http://spring-rich-c.sourceforge.net/



Zdravím,

budu muset přepsat jeden ne-jevovský projekt do Javy a bude to tlustý
klient využívající Swing. Ve spoustě případů budu potřebovat okna, jejichž
komponenty budou zobrazovat a/nebo měnit data pocházející z relační
databáze. Aplikace bude dvojvrstvá.

Je mi jasné, že psát kód pro databinding je vynalézání kola. Máte někdo
zkušenosti s nějakým frameworkem na tuhle záležitost? Mě se zatím nejvíc
líbí JGoodies binding (https://binding.dev.java.net/), ale uvítám
názory/postřehy s tímto nebo čímkoli jiným.

Díky za názory

Petr
  


Re: EJB3 a Netbeans 5.0 a 5.5

2006-05-24 Tema obsahu URBAN Leos

Zdravím,
neporadím s Netbeans 5.5 (i když jsem je také zkoušel) ale já to pod 5.0 
(s cílovým AS JBOSS) dělám takto:
Založím projekt X-EAR, který obsahuje jen v META-INF soubor 
application.xml. Tento projekt má v build.xml napsáno, které jiné 
projekty musí dokopírovat a že se má přejmenovat.


target name=-post-jar
property name=ear_name value=Performance/
delete file=../${ear_name}-EAR/dist/${ear_name}-EAR.jar /
copy file=../${ear_name}-EBS/dist/${ear_name}-EBS.jar todir=dist/
copy file=../${ear_name}-SBI/dist/${ear_name}-SBI.jar todir=dist/
copy file=../${ear_name}-SBS/dist/${ear_name}-SBS.jar todir=dist/
ear earfile=dist/${ear_name}.ear apxml=src/META-INF/application.xml 
fileset dir=dist
include name=*.jar/
/fileset
fileset dir=dist
include name=*.war/
/fileset
/ear
/target

A pak založím projekty X-EBS (Entity Beans), X-SBI (Session Beans 
Interfaces), X-SBS (Session Beans) ev. X-WAR.

Tyto projekty mají pro úspěšný překlad nastaveny knihovny s J2EE5,
Vám samozřejmě stačí jen X-SBS a X-SBI.
Jednotlivé projekty mají mezi sebou vazby, používají se mezi sebou. SBI 
používá EBS, SBS používá SBI a EBS.


Funguje s JBOSS bez problémů.

SBI a SBS jsou oddělené, abych klientovi mohl jednoduše podsunout jenom 
interfacy bez implementačních tříd (bezpečnost). Jinak by to klidně 
mohlo být v jednom JARu.


Sunovský server jsem zkoušel, moc se mi líbilo ovládání (a AS jako 
takový) ale co se týká EJB3 tak mne velmi zarazilo, že při definici 
vazeb to vyžadovalo do kódu entity beany přidat TopLink anotace, což 
jsem prostě nezkousnul. Kromě toho to fungovalo blbě s Postgresem (který 
to tedy ani oficiálně neumělo).


Leoš