[J2EE] Deploying .war met .jar's in Tomcat levert exception

Pagina: 1
Acties:

  • Fresh T.
  • Registratie: Februari 2002
  • Laatst online: 11:37
Ik ben aan het proberen om een .war te deployen in JBoss 4.0.0. Als ik alleen mijn classes en jsp bestanden package in een .war en deze deploy, dan werkt het goed. Echter wanneer ik een .jar toevoeg aan de package, dan levert het deployen de volgende exception op:

org.jboss.deployment.DeploymentException: invalid entry size (expected 104511 but got 104509 bytes); - nested throwable: (java.util.zip.ZipException: invalid entry size (expected 104511 but got 104509 bytes))
at org.jboss.web.AbstractWebContainer.init(AbstractWebContainer.java:314)
.
.
.
Caused by: java.util.zip.ZipException: invalid entry size (expected 104511 but got 104509 bytes)
at java.util.zip.ZipInputStream.readEnd(ZipInputStream.java:367)
at java.util.zip.ZipInputStream.read(ZipInputStream.java:141)
at java.util.jar.JarInputStream.read(JarInputStream.java:159)
at org.jboss.util.file.JarUtils.unjar(JarUtils.java:279)
at org.jboss.web.AbstractWebContainer.init(AbstractWebContainer.java:262)
... 21 more

JBoss maakt gebruik van Tomcat 5.0.28. Wat kan hier de oorzaak van zijn? Ik heb al gekeken of eventueel de .jar corrupt is, maar dat is niet het geval. Elke willekeurige .jar levert dit probleem.

  • ronaldmathies
  • Registratie: Juni 2001
  • Niet online
Dit heeft te maken met de snelheid van het deployen. Ik vermoed dat je het via een tool deployed. Probeer het een handmatig in de jbossmap/server/default/deploy map te zetten en kijk dan nog eens of het fout gaat.

Ik had namelijk dezelfde problemen, en dat had gewoon te maken met het feit dat het deployen te lang duurde, mijn deploy tool ging al in de deploy map plaatsen maar moest nog de jars werkelijk maken. Dus deze waren nog open door de deploy tool. Aan de andere kant begint JBoss al meteen met het openen van het bestand, waardoor het een zip fout optreed.

Daarnaast is het gebruikelijk dat je je jar's in de jbossmap/server/default/lib plaatst (waarbij je niet de libs vervangt van JBoss zelf (let op jbossmap/lib horen er ook bij).

Het belangrijkste om te weten in dit geval is dat JBoss en de webapplicaties standaard onder één classloader draaien. Dus je mag klassen niet dubbel hebben.

(Dit kan anders maar dat is een ander verhaal, het is namelijk via instellingen wel mogelijk om je .war .jar .ear onder een eigen classloader te hebben.

3015 Wp-z 5360 Wp-nno op 2 x SMA-SB3600 TL-21, Warmtepomp: ERSC-VM2CR2 / PUHZ-SHW140 YHA, WTW Q350, EV Kia Ev6 GT-Line


  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Op welke manier deploy je jouw WAR-file?
Als je het bvb via FTP deployed, dan zijn deze exceptions geen 'uitzondering'. Aangezien JBoss deze reeds gaan proberen uit te lezen, terwijl heel het package nog niet correct op de server staat (deze wordt nl nog geupload via FTP).

Probeer idd eens zoals ronaldmathies al aangaf om jouw samengestelde WAR eens rechtstreeks in de "\server\default\deploy" map te plaatsen. Dan zou het normaal wel goed moeten gaan. Wat je ook nog kan proberen is: jboss stoppen, war deployen, jboss starten .. en dan kijken of het goed gaat..

  • Fresh T.
  • Registratie: Februari 2002
  • Laatst online: 11:37
Ik package em op mijn eigen computer en hij moet gedeployed worden op een server. Hiervoor kopieer ik em vanaf mijn computer naar die server, direct in de map. Hierbij levert hij dus de exceptions op. Door eerst op de server in een andere dir te plaatsen en vanuit daar in de deploy map te plaatsen, helpt ook niet. Door eerst jboss te shutdownen en dan erin plaatsen en weer opstarten levert exact dezelfde fout weer op met het volgende:

18:12:41,539 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
Incompletely deployed packages:
org.jboss.deployment.DeploymentInfo@ea94361f { url=file:/usr/local/jboss-4.0.0/server/default/deploy/upload.war }
deployer: org.jboss.web.tomcat.tc5.Tomcat5@145f939
status: null
state: FAILED
watch: file:/usr/local/jboss-4.0.0/server/default/deploy/upload.war
altDD: null
lastDeployed: 1104513161523
lastModified: 1104513161000
mbeans:

Helaas helpt nog niets.