JMS package javax.jms does not exist (mit servlets/jsp)

Status
Nicht offen für weitere Antworten.
wir haben den projektauftrag bekommen in der schule verschiedene Netzwerkwege zu untersuchen jetzt bekomme ich eine fehlermeldung beim JMS-Server (leider errormeldung auf franz)
kann mir bitte jemand helfen, ich sollte das bis und mit morgen implementieren.

Code:
Etat HTTP 500 - 

--------------------------------------------------------------------------------

type Rapport d'exception

message 

description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.

exception 

org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP

Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:6: package javax.jms does not exist
import javax.jms.*;
^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:112: cannot resolve symbol
symbol  : class QueueConnectionFactory 
location: class org.apache.jsp.jsp1_jsp
                QueueConnectionFactory queueConnectionFactory = null;
                ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:113: cannot resolve symbol
symbol  : class QueueConnection 
location: class org.apache.jsp.jsp1_jsp
                QueueConnection queueConnection = null;
                ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:114: cannot resolve symbol
symbol  : class QueueSession 
location: class org.apache.jsp.jsp1_jsp
                QueueSession queueSession = null;
                ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:115: cannot resolve symbol
symbol  : class Queue 
location: class org.apache.jsp.jsp1_jsp
                Queue queue = null;
                ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:116: cannot resolve symbol
symbol  : class QueueSender 
location: class org.apache.jsp.jsp1_jsp
                QueueSender queueSender = null;
                ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:117: cannot resolve symbol
symbol  : class TextMessage 
location: class org.apache.jsp.jsp1_jsp
                TextMessage message = null;
                ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:140: cannot resolve symbol
symbol  : class QueueConnectionFactory 
location: class org.apache.jsp.jsp1_jsp
                        queueConnectionFactory = (QueueConnectionFactory)
                                                  ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:142: cannot resolve symbol
symbol  : class Queue 
location: class org.apache.jsp.jsp1_jsp
                        queue = (Queue) jndiContext.lookup(queueName);
                                 ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:165: cannot resolve symbol
symbol  : variable Session 
location: class org.apache.jsp.jsp1_jsp
                        Session.AUTO_ACKNOWLEDGE);
                        ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:181: cannot resolve symbol
symbol  : class JMSException 
location: class org.apache.jsp.jsp1_jsp
                catch (JMSException e)
                       ^


Une erreur s'est produite à la ligne: 61 dans le fichier jsp: /jsp1.jsp
Erreur de servlet générée:
C:\Borland\JBuilder2005\thirdparty\jakarta-tomcat-5.0.27\work\Catalina\localhost\_\org\apache\jsp\jsp1_jsp.java:194: cannot resolve symbol
symbol  : class JMSException 
location: class org.apache.jsp.jsp1_jsp
                                catch (JMSException e) {}
                                       ^
12 errors



	org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
	org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
	org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/5.0.27.


--------------------------------------------------------------------------------

Apache Tomcat/5.0.27
 

Bleiglanz

Gesperrter Benutzer
was machst du? der tomcat ist KEIN JMS Provider?

du musst schon einen verwenden und die nötigen client jars entweder ins ...WEB-INF/lib oder gleich in $CATALINA_HOME/common/lib
 
vielen dank für die schnelle antwort. Leider wird der Tomcat jetzt automatisch geschlossen beim zugriff auf die JSP-seite.

das mit tomcat war mir klar thänx.
 
ja der tomcat gibt folgende fehlermeldung:
JNDI API lookup failed: javax.naming.NameNotFoundException: ...

ich nehme mal an dass ich das javax.naming.jar nicht included hab oder so.

edit: ah nee das javax.naming ist ja im JDK schon included.
 

Bleiglanz

Gesperrter Benutzer
nein, das naming ist schon vorhanden

aber der gesuchte name war nicht im JNDI Baum, d.h. die lookup Methode ist gescheitert

=> du musst Dinge, die du auf einer jsp via lookup holen willst schon vorher reinlegen [Global Ressources in der server.xml o.ä], vermutlich brauchst du eine JMSConnectionFactory oder sowas
 
vielen dank für deine Hilfe, ich bin dem Fehler jetzt schon ein stückchen näher.
ich hab noch irgendwo im internet gefunden:

Ein Objekt anmelden bzw. an den Namen binden - hängt von deiner Umgebung ab...

z.B. ein ConnectionPool in der server.xml bei Tomcat

<Resource auth="Container"
name="jdbc/meinname/aha"
scope="Shareable"
type="javax.sql.DataSource"/>

bindet das Objekt an den Namen "jdbc/meinname/aha"

achja er findet die datei queueconnectionfactory nicht
 
da ich nicht genau weiss was gemeint ist (sorry bin newbie in diesem Bereich)
JMS
Servlets
Tomcat 5.0
-> Klasse QueueConnectionFactory
JDK 4.x
P2P

er scheint die Klasse QueueConnectionFactory nicht zu kennen und ich muss das wahrscheinlich in der Server.xml oder web.xml von Tomcat ändern.
was ich nun genau ändern muss ist die frage, auf die ich bisher noch keine Lösung gefunden habe.
Das Internet ist hierzu keine grosse Hilfe (leider!)
 

Bleiglanz

Gesperrter Benutzer
JMS ist ein haufen Interfaces, damit du auf irgendeine art von Messaging System (eine JMS Implementierung, ein JMS Provider) zugreifen kannst, brauchst du so eine Implementierung

der TOMCAT ist KEIN JMS-Provider, hat keinerlei Unterstützung für Messages

=> du brauchst irgendeinen Drittanbieter, irgendeinen Hersteller von Messaging Software, damit du überhaupt mit JMS arbeiten kannst????
 
brauche den J2EE SDK

irgendwie bin ich jetzt total verwirrt mit diesem Dritthersteller, das messaging hat ja gefunzt bis ich das servlet versucht habe einzubinden...
 
Lösungsansatz:
ins web.xml schreiben:
<res-ref>
<res-ref-name>jms/QueueConnectionFactory</res-ref-name>
<res-type>javax.jms.QueueConnectionFactory</res-type>
<res-auth>Container</res-auth>
</res-ref>
 

Bleiglanz

Gesperrter Benutzer
du brauchst einen vollen J2EE Application server, ein solcher hat nämlich einen JMS-Server eingebaut

=> der Tomcat nicht
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben