[Java lista] wicket, jetty, databinder kerdesek

Gabor Szokoli szocske at gmail.com
2007. Jan. 9., K, 12:28:27 CET


Kedves Listatagok!

Lelkes mukedvelo java SE hasznalo vagyok, de webalkalmazas fejlesztest
sosem lattam kozelrol.
Gondoltam majd most: egy moricka-alkalmazast kellene portoljak egyedi
in-house perl framworkrol valami jovobemutatobbra.

Tehat a feladat: par adatbazis tablabol minden logika nelkul par
formnyi CRUD alkalmazas, gyakorlatilag telefonkonyv, a telefonszamok
tobb-az-egyhez rendelodnek emberekhez, emberek pedig tobb-az-egyhez
csoportokhoz. Egyetlen trukk, hogy authentikalni ugyanebbol a
telefonkonyvbol kell, authorizalas abbol all hogy admin, csoportadmin,
vagy simauser-e az illeto, eszerint szukulo jogkorrel.

Elso korben csak egy demot kell kibirnia, tehat egy jettyben is mehet,
de kesobb tovabbfejlesztheto kell legyen skalazhatova, akar tizezer
parhuzamos sessionig.

A HTML kinezetet meglevo weboldalak alapjan akartuk klonozni, ezert a
wicket framework tunt idealisnak, az alapveto szimpatian tul is.
Debian adottsag, unstable-vel probalkoztam:

apt-get install sun-java5-jdk eclipse : telepult, utana kezzel
JAVA_HOME valtozot beallitottam.

Wicket peldakat kiprobaltam nem fordulnak a tesztek, csupa nemletezo
package-t include-olnak:

import net.sourceforge.jwebunit.WebTestCase;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Node;
import com.meterware.httpunit.HttpUnitOptions;
satobbi.

Ezeket honnan kellene szereznem, es hova kellene tennem egy ilyen
quickstartos szituacioban?

(Mindegy, attol rapid prototyping hogy nem foglalkozunk ilyen
aprosagokkal, jetty indit.)
Szepen felall, de ha browserrel ranezek:
2007-01-08 14:10:28.830::WARN:  EXCEPTION
java.nio.channels.CancelledKeyException
   at gnu.java.nio.SelectionKeyImpl.interestOps(libgcj.so.70)
   at gnu.java.nio.SelectorImpl.select(libgcj.so.70)
   at org.mortbay.jetty.nio.SelectChannelConnector$SelectSet.accept(SelectChannelConnector.java:340)
   at org.mortbay.jetty.nio.SelectChannelConnector.accept(SelectChannelConnector.java:175)
   at org.mortbay.jetty.AbstractConnector$Acceptor.run(AbstractConnector.java:630)
   at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)

Browserban ujraprobalva latszik minden, tobbszor nem botlik.
Furcsa viszont, hogy egyes keresek 4-5 masodperces varakozas utan
jelennek meg a bongeszoben, a jetty konzol kimeneten viszont
tizedmasodperces valaszidokrol ir:
INFO  - ServerAndClientTimeFilter  - 101ms server time taken for
request /wicket-examples/repeater?wicket:interface=:1:sorting:53:actions:select:3:ILinkListener
response size: 9070

Egy bivalyeros notebookon fut minden, 0% CPU, nem swappol.
Ez mi lehet?

Lepunk tovabb, Databinder, maven varazsolas (mar nem tudom pontosan
kovetni mi is tortenik konkretan, ha nagy vonalakban meg ertem is. Nem
szeretem.)
Nemi probalgatas aran command linebol fordul es indul az ures project,
de eclipse-be importalva a projectet az nem erti az @Override
annotaciot a metodusokon:

@Override
	public Class getHomePage() {
		return MyDataPage.class;
	}

Override cannot be resolved to a
type	myExample/src/main/java/example	MyApplication.java	line 12

A project properties->java compiler->JDK Complience tabban mindenutt 5.0.
eclipse 3.2

Mit rontok el?

A sok maven-buveszkedes miatt szivesen kihagynam a Databindert, ha
talalnek valahol szajbaragos tutorialt arrol, hogy hogyan faragjak az
egyszeru igenyeimnek megfelelo adatbaziskezelest a wicket tablazatok
es formok modelljeibe.
Elso korben lehet hogy eleg lenne JDBCbol kiugyeskednem az adatokat,
ha a hibernate-hez tenyleg ekkora hokuszpokusz kell. Raerek egyszerre
egy vadidegen technologiat es toolkitet megtanulni :-)
Otlet?


Koszonom a turelmeteket:

Szokoli Gabor


További információk a(z) Javalist levelezőlistáról