webForumDet fria alternativet

problem med egna klasser

Java

1 svar · 260 visningar · startad av jme

Medlem sedan maj 20012 237 inlägg
Frågan#1

Jag måste väl ta och köpa en J2EE bok för jag fattar inte detta...

Jag har klassen SQLTool som jag använder för att koppla upp mig mot en MySQL databas.

SQLTool ingår i package

utils.sql;

Sedan så har jag en annan klass, Message som kapslar in resultatet från en sql query.

Även denna klass ingår i

utils.sql;

SQLTool anropar jag från en .jsp sida genom

<jsp:useBean id="sql" class="utils.sql.SQLTool" scope="session"/>

Jag har metoden getForum() i SQLTool som returnerar ett objekt av typen Vector som innehåller Message objekt.

På .jsp sidan så vill jag ha följande sats:

Message message = (Message)vector.get(0)

Detta fungerar inte - får följande felmeddelande:

"utils.sql.Message is not public in utils.sql; cannot be accessed from outside package"

Jag fattar inte riktigt hur jag skall kunna använda egna klasser. Vad jag fattar så är SQLTool en s k JavaBean.

Jag försökte lägga ut Message genom att ange sökvägen till den i CLASSPATH. Detta fungerar med vanliga Java program.
Men på .jsp sidan så säger det att package xxx not found.

Om jag t ex vill använda klassen Vector så importerar jag java.util;

<%@ page import="java.util.*" %>

Varför kan jag då inte importera egna klasser på liknande sätt?

<%@ page import="jme.*" %>

Jag kan skriva import jme.*; i vanliga Java-program.

Medlem sedan sep. 2001961 inlägg
#2

Hur ser utils.sql.Message ut och är deklarerad? En jsp-sida ligger alltid i default package (eller ibland i något eget paket med web-namnet som bas).

Det gör att om man har deklarerat något för protected så går det inte att accessa det utanför paketet eller subpaket.

Det går att göra import på egna klasser och det verkar som om du gör det eftersom den ger accessfel och inte "class not found".

Felet ligger nog i hur Messageklassen är deklarerad. Posta kod.

/Lime

262 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)