AGMedlem sedan mars 20001 229 inlägg
Har några frågor om Tomcat.
Läste dokumentationen men är fortfarande osäker.
Varför komplimeras inte mina servlet-filer direkt när de ligger i web-inf/classes katalogen?
Kör jag lokal komplimering fungerar det.
Vilken katalog lyssnar bönorna till som standard, trodde det var samma som servletsen?
Har tidigare jobbat med Resin under Windows, arbeta då med win-odbc. Vilket är att föredra nu när man har Tomcat på Unix? Är mysql-databas.
Andreas
AGMedlem sedan mars 20001 229 inlägg
Verkar ju nästan som om tomcat inte har inbyggd support för bönor, stämmer detta?
Andreas
JaarMedlem sedan juli 2001434 inlägg
Kompilera dina bönor och lägg class filerna i din classes katalog, då ska det fungera... Tomcat kompilerar inte dina java filer, endast JSP-sidorna kompileras, de ska ligga i source-format
AGMedlem sedan mars 20001 229 inlägg
Kan ni utläsa något av följande fel
http://test.myserverspy.com/mybean.jsp
Andreas
JaarMedlem sedan juli 2001434 inlägg
Detta får snart flyttas till det nya web-forumet ;)
Ditt fel baseras i org.apache.jsp.MyBean, detta är nog lite tokigt.
Jag vet inte vart du lagt dina class filer, men du har en katalog som oftast heter classes i din Apache Tomcat katalog.
Om det är ett package så får du skapa underkataloger som vanligt.
Ex: package superpaketet ska ligga under classes/superpaketet
Din klass (MyBean) ska alltså ligga där...
Hur du använder MyBean är också fel. Använd jsp:useBean taggen istället...
<jsp:useBean id="myBean" class="superpaketet.MyBean"/>
när du sedan vill använda bönan får du köra
String test = myBean.function(para1); t.ex
Om du ska använda den som du vill
MyBean test = new MyBean();
måste du säga till jsp-sidan att den ska importera klassen...
<%@ page import="superpaketet.MyBean" %>
Samma sak om du använder andra klasser som den troligen inte känner till, dock kan man köra på de flesta (Vector, String osv)
//Jan
AGMedlem sedan mars 20001 229 inlägg
Katalogen fungerar för servlet (web-inf/classes) http://test.myserverspy.com/servlet/Hello
Koden är som följer:
'bönan - MyBean
public class MyBean {
private String text="Hello World";
public String getText()
{
return(text);
}
public void setText(String text)
{
this.text=text;
}
}
'sidan - bean.jsp
<jsp:useBean id="MyBean" class="MyBean"/>
<html>
<head>
<title>test</title>
</head>
<body>
<h1><jsp:getProperty name="MyBean" property="text"/></h1>
</body>
</html>
Verkar frågande.
Andreas
JaarMedlem sedan juli 2001434 inlägg
Och bönan ligger kompilerad (MyBean.class) i WEB-INF/classes katalogen?
Om servletsen fungerar så fungerar ju classpathen o då borde web-bönan också fungera...
AGMedlem sedan mars 20001 229 inlägg
Japp .class-filen finns där. Har fixat det på min lokala server, resin.
Andreas
sgtpepperMedlem sedan apr. 20005 524 inlägg
Eftersom vi nu fått ett webbrelaterat Javaforum så flyttar jag tråden dit, hoppas det är ok AG?
AGMedlem sedan mars 20001 229 inlägg
Självklart, upptäckte det igår kväll, kul.
Sgtpepper du med din expertis har säkert en lösning på detta problem.
Andreas
ViktorMedlem sedan aug. 20021 710 inlägg
Fråga mig inte varför men det fungerar perfekt när jag lägger bönan i ett package.
package com;
public class MyBean {
private String text="Hello World";
public String getText()
{
return(text);
}
public void setText(String text)
{
this.text=text;
}
}
<jsp:useBean id="MyBean" class="com.MyBean"/>
<html>
<head>
<title>test</title>
</head>
<body>
<h1><jsp:getProperty name="MyBean" property="text"/></h1>
</body>
</html>
/Viktor
AGMedlem sedan mars 20001 229 inlägg
Nope, skumt
http://test.myserverspy.com/mybean.jsp
Kan det vara min komplimering som är fel?
Fungerar utan problem lokalt.
http://213.65.197.127:8080/mybean.jsp
Andreas
sgtpepperMedlem sedan apr. 20005 524 inlägg
Har du testat att lägga bönan i ett paket som Viktor skrev? Det skall tydligen finnas en bugg i Tomcat när man lägger sina bönor i default-paketet (dvs inget paket).
AGMedlem sedan mars 20001 229 inlägg
Japp den ligger i ett paket, precis som i Viktors exempel.
Kan man inte på nåt sätt bara försöka anropa själva bönklassen, och se ifall man får svar, alltså anrop rätt in i jdk.
Andreas
sgtpepperMedlem sedan apr. 20005 524 inlägg
Kan man inte på nåt sätt bara försöka anropa själva bönklassen, och se ifall man får svar, alltså anrop rätt in i jdk.
Vet inte riktigt hur du menar, men självklart kan du instansiera bönklassen som "vanligt" i din JSP-sida, dvs:
com.foo.bar.MyBean theBean = new com.foo.bar.MyBean();
theBean.doSomething();
osv..
AGMedlem sedan mars 20001 229 inlägg
Nja
Menade mer att man skulle försöka göra en import av bönpaketet, och se om det över huvud taget skulle fungera.
Ingen annan som har nån lösning på mitt lilla dilemma?
Varför komplimeras inte filerna automatiskt i tomcat?
Andreas
sgtpepperMedlem sedan apr. 20005 524 inlägg
Menade mer att man skulle försöka göra en import av bönpaketet
Jaha, det gör du så här:
<%@ page import="foo.bar.MyClass, foo.bar.MyOtherClass, java.util.*" %>
AGMedlem sedan mars 20001 229 inlägg
Blev inte vidare klokare av det heller, när jag testade. Vad kan vara felet, en för gammal jdk eller så?
Jörgen HPMedlem sedan feb. 20012 179 inlägg
JDK 1.1 och senare kan köra JavaBeans. :)
Jörgen HPMedlem sedan feb. 20012 179 inlägg
Det var ett tag sedan jag pulade med JSP senast. Men om jag minns rätt måste du ange en räckvidd för <jsp:useBean>
<jsp:useBean id="name" scope="page|request|session|application">