Portál AbcLinuxu, 20. května 2024 13:33

Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)

31.8.2006 21:26 | Přečteno: 1366× | Rady

Zdravim vsechny. Potrebaval bych poradit s implementaci tabulky pomoci XMLTableModelu z baliku DOM4J

Zacnu tedy odzacatku, stahnul sem si balik DOM4J, ve svem Eclipse jsem naimportoval prislusny .jar

.classpath se je zde.

Po prekladu a vytvoreni .jar archyvu na me JAVA hulaka, ze nema

Exception in thread "main" java.lang.NoClassDefFoundError: org/dom4j/swing/XMLTableModel
        at cz.pele.GUI.MainWindow.getTable(MainWindow.java:273)
        at cz.pele.GUI.MainWindow.getTabPanel(MainWindow.java:322)
        at cz.pele.GUI.MainWindow.getGrafikaPanel(MainWindow.java:253)
        at cz.pele.GUI.MainWindow.getTabbWindow(MainWindow.java:151)
        at cz.pele.GUI.MainWindow.getJContentPane(MainWindow.java:117)
        at cz.pele.GUI.MainWindow.initialize(MainWindow.java:102)
        at cz.pele.GUI.MainWindow.init(MainWindow.java:92)
        at cz.pele.GUI.MainWindow.main(MainWindow.java:530)

Nevim co delam spatne, poradite nekdo?? Predem dik.

       

Hodnocení: -

zatím nehodnoceno
        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

Josef Kufner avatar 31.8.2006 22:03 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Odpovědět | Sbalit | Link | Blokovat | Admin
Njn, to je ta krásná a naprosto dokonalá Java.

Taky jsem takový problém kdysi řešil a pokud si pamatuju dobře, tak pomohlo spouštění bez přípony souboru. Javu už naštĚstí nainstalovanou nemám a nikdo mě nenutí ji používat, takže ti to přesněji neřeknu ;-)
Hello world ! Segmentation fault (core dumped)
31.8.2006 23:00 Pavel Kysilka
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Java neni dokonala a ani vy. Nikdo a nic neni dokonale.

Kdyby jste byl alespon trochu dokonaly, tak poslete reseni.

Pamatujete si spatne, ze spousteni bez prilohy prilis v tomto pripade vyresi. To jiz autor prispevku udelal.

pokud tohle nezabere [je treba upravit], tak at mi autor blogu/prispevku da vedet sem do diskuse.

CLASSPATH=":/javalib/dom4j.jar:/javalib/jaxen-full.jar:/javalib/saxpath.jar"

Mozna, ze to neni skoda, ze nemate nainstalovanou javu.

bye gf
pele avatar 31.8.2006 23:30 pele | skóre: 28 | blog: Bleabr | UH
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)

Classpath sem rucne zkousel nastavovat ale nepomohlo to, vyjimka je stale stejna. Predpokladam ze to Eclipse slinkuje(da li se to tak rict), kdyz to ma uvedeno v exportech.

Zacinam byt v koncich :-(

Pravda má jednu velkou výhodu: člověk si nemusí pamatovat, co řekl.
1.9.2006 00:08 Pavel Kysilka
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
podle me vam chybi nejaka knihovna z tech, co jsem daval v te CLASSPATH. overte, zda fyzicky existuje a dejte vedet.

pripadne zkuste konsoli. to je jistota. a pak hledat chybu v grafickem nastroji.

bye gf
1.9.2006 12:38 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Já Javu nainstalovanou nemám a právě proto takovéhle problémy ani mít nemůžu, stejně jako předřečník. Taky způsob, jak se zbavit jednoho problmu navíc. :-D :-D :-D
1.9.2006 08:15 moira | skóre: 30 | blog: nesmysly
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Jako kazdy nastroj i Java se MUSI UMET pouzivat... Vic k tomu dodavat nebudu.
Překladač ti nikdy neřekne: "budeme kamarádi"
1.9.2006 08:39 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Taky jsem takový problém kdysi řešil a pokud si pamatuju dobře, tak pomohlo spouštění bez přípony souboru.
Taky mívám podobné problémy (napíšu náhodně parametry příkazu, jak by tak asi mohly být) s různými programy, a pokud si pamatuju, tak psát parametry příkazu podle toho, jak jsou popsány v dokumentaci, pomáhá obecně velmi často ;-)

Vzhledem k tomu, že se Javě při spuštění nepředává jméno souboru, ale jméno třídy, není se čemu divit, že tam žádná přípona souboru není…
1.9.2006 01:04 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Odpovědět | Sbalit | Link | Blokovat | Admin
V tom popisu je přeskočena jedna část, a bohužel ta podstatná: jak je to spouštěno.
pele avatar 1.9.2006 07:08 pele | skóre: 28 | blog: Bleabr | UH
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
java -jar soubor.jar
Vse fungovalo dokud sem si nezacal hrat s tabulkou.
Pravda má jednu velkou výhodu: člověk si nemusí pamatovat, co řekl.
1.9.2006 08:13 moira | skóre: 30 | blog: nesmysly
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Na vytvareni archIvu doporucuji Fat Jar (http://fjep.sourceforge.net/). Jinak to ze mate nastavenou CLASSPATH v Eclipse se nijak neprojevuje pri spousteni jaru mimo Eclipse (Eclipse nebali do jaru zadne knihovny).
Překladač ti nikdy neřekne: "budeme kamarádi"
1.9.2006 08:32 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Předpokládám, že přímo z eclipse to spustit jde. Problém je nejspíš v tom, jakým způsobem vytváříte soubor.jar. Java totiž musí mít všechny třídy, které nahrává, v classpath. A asi žádný nástroj vám při vytváření jaru nevytvoří správnou classpath sám od sebe. Pokud spouštíte nějaký program přes java -jar soubor.jar, je na classpath tento soubor.jar a pak vše, co je uvedené v v tom jaru v souboru META-INF/MANIFEST.MF u parametru Class-Path: – jednotlivé části classpath jsou oddělené mezerou a jsou relativní k souboru jar. Máte tedy 2 nejjednodušší možnosti:
  • spouštět program java -cp soubor.jar;dom4j.jar;… vase.hlavni.Trida
  • spouštět program přes java -jar soubor.jar, a přidat classpath správně do manifestu. Ten pak může vypadat např. takhle:
    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.6.5
    Created-By: 1.5.0_04-b05 (Sun Microsystems Inc.)
    Built-By: Filip
    Main-Class: org.jirsak.test.Main
    Class-Path: ./lib/derby.jar ./lib/dom4j-1.6.1.jar ./lib/forms-1.0.7.ja
     r ./lib/looks-2.0.4.jar
    
pele avatar 1.9.2006 09:11 pele | skóre: 28 | blog: Bleabr | UH
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Diky tohle by mohlo byt to prave orechove, predpokladal jsem ze si Eclipse vyexportuje, externi knihovny.
Pravda má jednu velkou výhodu: člověk si nemusí pamatovat, co řekl.
1.9.2006 09:44 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Jelikož je tam evidentně nastavena hlavní třída a generuje se manifest (jinak by spuštění jaru vůbec nebylo možné), předpokládám že tam pujde někde nastavit i classpath do manifestu. Zcela jistě to ale bude extra nastavení.

Eclipse nepoužívám, takže je to jen spekulace.
1.9.2006 10:55 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Při generování jar z eclipse je možné nechat vytvořit i manifest a jméno hlaví třídy se tam nastavuje. Možnost nastavit classpath tam není, je tam možnost použít předem připravený manifest. Osobně si nedovedu moc představit automatické generování classpath do manifestu, protože potřebné knihovny jsou ve vývojovém prostředí umístěny dost často jinde, než kde jsou u "sbuildovaného" projektu.

Já osobně používám pro generování jar balíčků Ant, následující build.xml mám jako základ, který na jednoduchou adresářovou strukturu funguje tak jak je, na složitější je potřeba tu a tam poupravit (tučné části je potřeba vždy přizpůsobit – normálně jsou tam proměnné, ale z tohohle zápisu je jasnější, co tam má přijít :-)
<project name="name" default="jar" basedir=".">
  <property file="ant.properties" />

  <property name="src" value="${basedir}/src" />
  <property name="lib" value="${basedir}/lib" />
  <property name="dist" value="${basedir}/dist" />
  <property name="build" value="${basedir}/build" />
  <property name="classes" value="${basedir}/classes" />
  <property name="javadoc" value="${basedir}/javadoc" />
  <property name="app.jar" value="ir.jar" />

  <target name="classpath">
    <path id="classpath">
      <fileset dir="${lib}">
        <include name="*.jar" />
      </fileset>
    </path>
  </target>

  <target name="prepare" depends="classpath">
    <mkdir dir="${classes}" />
    <mkdir dir="${javadoc}" />
  </target>

  <target name="clean" depends="" description="Remove generated files">
    <delete dir="${classes}" />
    <delete dir="${dist}" />
  </target>

  <target name="classes" depends="prepare" description="Compile the java classes">
    <javac srcdir="${src}" destdir="${classes}">
      <classpath>
        <path refid="classpath" />
        <pathelement path="${classes}" />
      </classpath>
      <include name="**/*.java" />
    </javac>
  </target>

  <target name="jar" depends="classes">
    <mkdir dir="${build}" />
    <pathconvert property="jar.class-path" pathsep=" " refid="classpath">
      <map from="${basedir}\lib\" to="./lib/"/>
    </pathconvert>
    <jar jarfile="${build}/${app.jar}" basedir="${classes}">
      <manifest>
        <attribute name="Class-Path" value="${jar.class-path}"/>
        <attribute name="Main-Class" value="com.example.ir.Main"/>
      </manifest>
      <include name="com/example/ir/**" />
    </jar>
  </target>

  <target name="dist" depends="jar" description="Build the distribution archives">
    <mkdir dir="${dist}" />
    <copy todir="${dist}">
      <fileset dir="${build}" includes="*.jar" />
    </copy>
    <mkdir dir="${dist}/lib" />
    <copy todir="${dist}/lib">
      <fileset dir="${lib}" includes="*.jar" />
    </copy>
  </target>

  <target name="javadoc" depends="prepare" description="Create javadoc">
    <javadoc packagenames="com.example.ir"
             destdir="${javadoc}"
             author="true"
             version="true"
             private="true"
             encoding="UTF-8"
             charset="UTF-8"
             windowtitle="${ant.project.name} ${RELEASE.MAJOR.MINOR} API"
             doctitle="${ant.project.name} ${RELEASE.MAJOR.MINOR}"
             bottom="Copyright &copy; 2006 někdo">
      <classpath>
        <path refid="classpath" />
      </classpath>
      <sourcepath>
        <pathelement path="${src}" />
      </sourcepath>
    </javadoc>
  </target>
</project>
Pak už stačí jen zadat ant dist (nebo v eclipse použít ant view) a v adresáři ./dist máte hotový projekt.
pele avatar 3.9.2006 14:13 pele | skóre: 28 | blog: Bleabr | UH
Rozbalit Rozbalit vše Re: Tvorba tabulky z XML pomoci XMLTableModel (DOM4J)
Ke stvoreni build.xml sem se jeste poradne nedostal,diky
Pravda má jednu velkou výhodu: člověk si nemusí pamatovat, co řekl.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.