Compiler Class in Extended RTSJ
Hello Friends,
For my real time application i am using following options at the start of the VM.
-XX:+ITCRT -XX:+ITCJLT -XX:+CompilePreLoaded -Drtsj.precompile=nhrt.precompile -Drtjs.preload=itc.preload -Drtsj.preinit=itc.preinit
But i want to give the compile list of method and class list for the pre initialization, programatically at the run time.For this i found methods in the RTJ Documentation. According to documentation we can do this by using mark(), preinit() and preload() method of the Compiler Class. when i tried to find this compiler class in the library of the RTJ i m unable to ...............i am able to find only api of the Compiler class but at the time of implementation class is not present in the jar files.......................
please tell me where i can find this Compiler class for RTJ or in which jar file this class is present
Also tell me if Compiler class is not present then how i can do the above step.............
Thanks
This Error occurs:
cannot find symbol
symbol: method preinit()
location: class *java.lang.*Compiler
You want com.sun.rtsjx.Compiler. I'll get the Compilation Guide fixed to make that clear.
And myRealtimeThread is not compiled, so that I can't use the VM afterwards (with the parameters: -XX:+RTSJBuildClassInitializationList) to create the list out of my myRealtimeThread.class code.
Maybe I have missunderstood the usage of Compiler.preinit()!? Maybe someone can explain its correct usage or give a short example for compiling this correctly.I think you have misunderstood. ITC can perform pre-initialization based on the -Drtsj.preinit=<filename> option passed at VM startup. This will cause the listed file to be read and for each class listed there to be pre-initialized. This list can be generated for you by using the -XX:+RTSJBuildClassInitializationList runtime option - which creates a list of all classes that were compiled-at-initialization time (ie those classes compiled because of the precompile list.) Alternatively you can use the com.sun.rtsjx.Compiler class to perform dynamic "pre-initialization" at runtime by passing it a URL to a file that contains the list of classes to be immediately initialized - the idea being that you would have created the contents of this file at runtime based on information that only became available to you at runtime.
Hope this clarifies things.
David Holmes
Similar Messages
-
Compilation using an extended class...
I'm beginning to program in Java after several years away. I cannot for the life of me see why this is not compiling. I'm reading a Wrox book on Java Server Pages and working examples as I go along. This problem should be a snap but not for me.
I have the following class:
package com.wrox.library;
public class Book
private String title;
public String getTitle()
return title;
public void setTitle(String title)
this.title = title;
public Book()
public Book(String title)
this.title = title;
This compiles just fine. Now I have a class that exends Book class, ChildrenBook. So there is this class:
package com.wrox.library;
public class ChildrenBook extends Book
private int minimumAge;
public int getMinimumAge()
return minimumAge;
public void setMinimumAge(int a)
minimumAge = a;
public String getType()
return "CHILDREN";
public ChildrenBook()
super();
public ChildrenBook(String title)
super(title);
Both these classes are in the same directory and are within the Tomcat directory under the calling JSP file. The error I get is "Cannot find symbol...Book". Why is this?
Edited by: platteco on Sep 30, 2007 10:34 PMplatteco wrote:
Thanks for the tip regarding classpath. I used your template to no avail. Here is what it produced:
$ javac -cp WEB-INF\classes\com\wrox\library\ChildrenBook.java
javac: no source files
Usage: javac <options> <source files>
use -help for a list of possible optionsI said
javac -cp WEB-INF/classes com/wrox/library/ChildrenBook.javaNOT
javac -cp WEB-INF/classes/com/wrox/library/ChildrenBook.javaThe former specifies the javac program that it is to look inside the classpath WEB-INF/classes*, and to compile the source file com/wrox/library/ChildrenBook.java*.
What you did was telling the javac program to look inside the classpath
WEB-INF/classes/com.wrox/library/ChildrenBook.java* (which it will assume ChildrenBook.java is either a directory or a zip/jar file that's unfortunately named so) and to compile the source file ... NADA!
The format of the classpath specification is
javac -cp <classpath> <sourcefile>Edited by: Clem1986 on Oct 1, 2007 11:32 AM for stressing -
Adding a JPanel from one class to another Class (which extends JFrame)
Hi everyone,
So hopefully I go about this right, and I can figure out what I'm doing wrong here. As an exercise, I'm trying to write a Tic-Tac-Toe (TTT) game. However, in the end it will be adaptable for different variations of TTT, so it's broken up some. I have a TTTGame.java, and TTTSquareFrame.java, and some others that aren't relavent.
So, TTTGame:import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import joshPack.jUtil.*;
public class TTTGame extends JFrame
private Integer sides = 3;
private TTTSquareFrame mainSquare;
private TTTGame newGame;
private Container contents;
private JPanel mainSquarePanel, addPanel;
public static void main(String [] args)
TTTGame newGame = new TTTGame();
newGame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
public TTTGame()
super("Tic-Tac-Toe");
contents = getContentPane();
contents.setLayout(new FlowLayout());
addPanel = startSimple();
if(!addPanel.isValid())
System.out.println("Something's wrong");
contents.add(addPanel);
setSize(300, 300);
setVisible(true);
public JPanel startSimple()
mainSquare = new TTTSquareFrame(sides);
mainSquarePanel = mainSquare.createPanel(sides);
return mainSquarePanel;
}and TTTSquareFrame:import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import joshPack.jUtil.Misc;
public class TTTSquareFrame
private JPanel squarePanel;
private JButton [] squares;
private int square, index;
public TTTSquareFrame()
System.out.println("Use a constructor that passes an integer specifying the size of the square please.");
System.exit(0);
public TTTSquareFrame(int size)
public JPanel createPanel(int size)
square = (int)Math.pow(size, 2);
squarePanel = new JPanel();
squarePanel.setLayout(new GridLayout(3,3));
squares = new JButton[square];
System.out.println(MIN_SIZE.toString());
for(int i = 0; i < square; i++)
squares[i] = new JButton();
squares.setRolloverEnabled(false);
squares[i].addActionListener(bh);
//squares[i].setMinimumSize(MIN_SIZE);
squares[i].setVisible(true);
squarePanel.add(squares[i]);
squarePanel.setSize(100, 100);
squarePanel.setVisible(true);
return squarePanel;
}I've successfully added panels to JFrame within the same class, and this is the first time I'm modularizing the code this way. The issue is that the frame comes up blank, and I get the message "Something's wrong" and it says the addPanel is invalid. Originally, the panel creation was in the constructor for TTTSquareFrame, and I just added the mainSquare (from TTTGame class) to the content pane, when that didn't work, I tried going about it this way. Not exactly sure why I wouldn't be able to add the panel from another class, any help is greatly appreciated.
I did try and cut out code that wasn't needed, if it's still too much let me know and I can try and whittle it down more. Thanks.Yea, sorry 'bout that, I just cut out the parts of the files that weren't relevant but forgot to compile it just to make sure I hadn't left any remnants of what I had removed. For whatever it's worth, I have no idea what changed, but something did and it is working now. Thanks for your help, maybe next time I'll post an actual question that doesn't somehow magically solve itself.
EDIT: Actually, sorry, I've got the panel working now, but it's tiny. I've set the minimum size, and I've set the size of the panel, so...why won't it respond to that? It almost looks like it's being compressed into the top of the panel, but I'm not sure why.
I've compressed the code into:
TTTGame.java:
import java.awt.*;
import javax.swing.*;
public class TTTGame extends JFrame
private Integer sides = 3;
private TTTSquareFrame mainSquare;
private TTTGame newGame;
private Container contents;
private JPanel mainSquarePanel, addPanel;
public static void main(String [] args)
TTTGame newGame = new TTTGame();
newGame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
public TTTGame()
super("Tic-Tac-Toe");
contents = getContentPane();
contents.setLayout(new FlowLayout());
mainSquare = new TTTSquareFrame(sides.intValue());
contents.add(mainSquare);
setSize(400, 400);
setVisible(true);
}TTTSquareFrame.java
import java.awt.*;
import javax.swing.*;
public class TTTSquareFrame extends JPanel
private JButton [] squares;
private int square, index;
private final Dimension testSize = new Dimension(50, 50);
public TTTSquareFrame(int size)
super();
square = (int)Math.pow(size, 2);
super.setLayout(new GridLayout(size, size));
squares = new JButton[square];
for(int i = 0; i < square; i++)
squares[i] = new JButton();
squares.setMinimumSize(testSize);
squares[i].setVisible(true);
super.add(squares[i]);
setSize(200, 200);
setVisible(true);
I've made sure the buttons are smaller than the size of the panel, and the panel is smaller than the frame, so...
Message was edited by:
macman104 -
Unable to compil class for jsp
error is
HTTP Status 500 -
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 6 in the generated java file
Syntax error on token ".", Identifier expected after this token
An error occurred at line: 7 in the generated java file
Syntax error on token ".", Identifier expected after this token
An error occurred at line: 9 in the jsp file: /travel/issue.jsp
LibraryStudent cannot be resolved to a type
6: <BODY>
7: <H1>issue books</H1>
8: <CENTER>
9: <jsp:useBean id="student"
10: type="LibraryStudent"
11: scope="session" />
12: student name:
An error occurred at line: 9 in the jsp file: /travel/issue.jsp
LibraryStudent cannot be resolved to a type
6: <BODY>
7: <H1>issue books</H1>
8: <CENTER>
9: <jsp:useBean id="student"
10: type="LibraryStudent"
11: scope="session" />
12: student name:
An error occurred at line: 13 in the jsp file: /travel/issue.jsp
LibraryStudent cannot be resolved to a type
10: type="LibraryStudent"
11: scope="session" />
12: student name:
13: <jsp:getProperty name="student" property="studentName" />
14:
15: book name:
16: <jsp:getProperty name="student" property="bookName" />
An error occurred at line: 16 in the jsp file: /travel/issue.jsp
LibraryStudent cannot be resolved to a type
13: <jsp:getProperty name="student" property="studentName" />
14:
15: book name:
16: <jsp:getProperty name="student" property="bookName" />
17:
18: <jsp:getProperty name="student"
19: property="issueData" />
An error occurred at line: 18 in the jsp file: /travel/issue.jsp
LibraryStudent cannot be resolved to a type
15: book name:
16: <jsp:getProperty name="student" property="bookName" />
17:
18: <jsp:getProperty name="student"
19: property="issueData" />
20: </FORM>
21: </CENTER>LibraryStudent.java is
import java.util.*;
import java.text.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;
public class LibraryStudent {
private String emailAddress, s,password, sname,bname;
private String date,value;
public String getStudentName() {
return(sname);
public void setStudentName(String sname) {
this.sname = sname;
public String getEmailAddress() {
return(emailAddress);
public void setEmailAddress(String emailAddress) {
this.emailAddress = emailAddress;
public String getPassword() {
return(password);
public void setPassword(String password) {
this.password = password;
public String getBookName() {
return(bname);
public void setBookName(String bname) {
this.bname = bname;
public String getDate() {
return(date);
public void setDate(String date) {
this.date = date;
public String getIssueData() //method that create connection withh database
throws ServletException,IOException{
try{
getDate(); //and add a entry in database
getBookName();
getStudentName();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:db2");
Statement st=con.createStatement();
String sql =
"insert into table1 (bookname,studentname,date) values(bname,sname,date)";
st.executeUpdate(sql);
System.out.println(sql);
String s= "your book has been issued ";
return(s);
catch(Exception e)
e.printStackTrace();
return "failed";
public String getSumbitData()
throws ServletException,IOException{
try
getBookName();
getStudentName();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:db2");
Statement st=con.createStatement();
String sql =
"delete from db2 where bookname='bname' and studentname=sname";
st.executeUpdate(sql);
System.out.println(sql);
String s="your book has been sumbitted ";
return(s) ;
catch(Exception e)
e.printStackTrace();
return "failed";
public static int findStudent //to validate customer
(String emailAddress,
String password) throws ServletException,IOException{
try
if (emailAddress == null) {
return(0);
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:user");
Statement st=con.createStatement();
String sql="select * from user where name='"+emailAddress+"' and password='"+password+"'";
System.out.println(sql);
ResultSet rs=st.executeQuery(sql);
if(rs.next())
return(1);
else
return(0);
}catch(Exception e)
e.printStackTrace();
return (0);}
to be continued.............and Library.java is import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Library extends HttpServlet {
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String emailAddress = request.getParameter("emailAddress");//use to email&pass
String password = request.getParameter("password");//from html page
LibraryStudent student = new LibraryStudent();//Make a student Object
int a=LibraryStudent.findStudent(emailAddress, password);//to validate student
if (a==0) {
gotoPage("/library/accounts.jsp", request, response);
else
student.setStudentName(request.getParameter("sname"));//use to sent other textbox
student.setBookName(request.getParameter("bname"));//data in librarystudent
student.setDate(request.getParameter("date"));//class after validation
HttpSession session = request.getSession(true);
session.putValue("student", student);
//for moving different page
if (request.getParameter("issue") != null) {
gotoPage("/travel/issue.jsp",
request, response);
} else if (request.getParameter("sumbit") != null) {
gotoPage("/travel/sumbit.jsp",
request, response);
} else if (request.getParameter("search") != null) {
gotoPage("/travel/search.jsp",
request, response);
} else if (request.getParameter("account") != null) {
gotoPage("/travel/EditAccounts.jsp",
request, response);
} else {
gotoPage("/travel/IllegalRequest.jsp",
request, response);
private void gotoPage(String address,
HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher(address);
dispatcher.forward(request, response);
} issue.jsp is
<%@page import="java.io.,java.util.,java.sql.*"%>
<HTML>
<HEAD>
<TITLE>issue books</TITLE>
</HEAD>
<BODY>
<H1>issue books</H1>
<CENTER>
<jsp:useBean id="student"
type="LibraryStudent"
scope="session" />
student name:
<jsp:getProperty name="student" property="studentName" />
book name:
<jsp:getProperty name="student" property="bookName" />
<jsp:getProperty name="student"
property="issueData" />
</FORM>
</CENTER>
</BODY>
</HTML> plz solve my problem .i m new to servlet and jsp and i have keen desire to learn this topic -
Dear all,
I've used java.util.List in my jsp, but when I import the package into the jsp, the following error occurs, please help:
Type: Exception Report
Message: Internal Server Error
Exception
org.apache.jasper.JasperException: Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated.
C:\Sun\AppServer7\domains\domain1\server1\generated\jsp\j2ee-modules\EmailTracker2\_jasper\_index_jsp.java:14: class jasper.index_jsp must be declared abstract. It does not define java.util.List getIncludes() from class org.apache.jasper.runtime.HttpJspBase.
public class indexjsp extends HttpJspBase {
^
1 error, 1 warning
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:312)
at com.iplanet.ias.web.jsp.JspServlet$JspServletWrapper.loadJSP(JspServlet.java:641)
at com.iplanet.ias.web.jsp.JspServlet$JspServletWrapper.access$000(JspServlet.java:501)
at com.iplanet.ias.web.jsp.JspServlet.serviceJspFile(JspServlet.java:322)
at com.iplanet.ias.web.jsp.JspServlet.service(JspServlet.java:287)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.StandardWrapperValve.invokeServletService(StandardWrapperValve.java:720)
at org.apache.catalina.core.StandardWrapperValve.access$000(StandardWrapperValve.java:118)
at org.apache.catalina.core.StandardWrapperValve$1.run(StandardWrapperValve.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:274)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:212)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:203)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:505)
at com.iplanet.ias.web.connector.nsapi.NSAPIProcessor.process(NSAPIProcessor.java:158)
at com.iplanet.ias.web.WebContainer.service(WebContainer.java:598)Hi,
I am using J2EE SDK 1.4 Server and deployed a Stateless Session Bean and used a JSP page as Web Deployment component. When I deploy the application no error is given but when I access application using the given web context name the following error is displayed on the browser.
type Exception report
message
description The server encountered an internal error () that prevented
it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP
No Java compiler was found to compile the generated source for the JSP.
This can usually be solved by copying manually
$JAVA_HOME/lib/tools.jar from the JDK
to the common/lib directory of the Tomcat server, followed by a Tomcat restart.
If using an alternate Java compiler, please check its installation and
access path.
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:132)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:356)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:420)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:463)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:444)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:557)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:306)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:253)
javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:324)
org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:289)
java.security.AccessController.doPrivileged(Native Method)
javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:311)
org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:205)
Can anyone tell me why this error could be generated? I've given the JAVA_HOME environment variable value as C:\Sun\AppServer\jdk and J2EE_HOME variable value as C:\Sun\AppServer. -
Hey i wanted a second opinion on my code i wrote, just for a rough draft to see if something like it will work. problem is
it wont compile the main class is uploader the sub class is loadercontent. the sub class will compile. alright but im not sure why the main method wont compile i keep getting this error message
"cannot find symbol class loadercontent"
<error message>
--------------------Configuration: <Default>--------------------
C:\uploader.java:9: cannot find symbol
symbol : class loadercontent
location: class uploader
loadercontent content = new loadercontent();
^
C:\uploader.java:9: cannot find symbol
symbol : class loadercontent
location: class uploader
loadercontent content = new loadercontent();
^
2 errors
Process completed.
</error message> heres the code of the two classes
<main method>
import java.awt.*;
import java.util.*;
import java.io.*;
import java.lang.*;
public class uploader {
public static void main(String args) throws InterruptedException{
loadercontent content = new loadercontent();
content.displayupload();
content.initializing();
}</main method>
heres the subclass
<sub class>
import java.awt.*;
import java.util.*;
import java.io.*;
import java.lang.*;
public class loadercontent {
public void displayupload() throws InterruptedException{
System.out.println("loading C:\\WINDOWS...");
Thread.sleep(1000);
System.out.println("loading C:\\WINDOWS\\system32...");
Thread.sleep(1000);
System.out.println("loading C:\\WINDOWS\\system32\\user32.dll...");
Thread.sleep(1000);
System.out.println("loading C:\\WINDOWS\\system32\\appmgr.dll...");
Thread.sleep(1000);
System.out.println("loading C:\\WINDOWS\\system32\\iphlpapi.dll...");
Thread.sleep(1000);
System.out.println("accsessing C:\\WINDOWS...");
Thread.sleep(15000);
System.out.println("accsessing C:\\WINDOWS\\system32...");
Thread.sleep(5000);
System.out.println("accsessing C:\\WINDOWS\\system32\\user32.dll...");
Thread.sleep(2500);
System.out.println("accsessing C:\\WINDOWS\\system32\\appmgr.dll...");
Thread.sleep(3450);
System.out.println("accsessing C:\\WINDOWS\\system32\\iphlpapi.dll...");
Thread.sleep(7890);
System.out.println("Checking privliages...");
Thread.sleep(2345);
System.out.println("Scanning for malicous software this may take afew minutes...");
Thread.sleep(260000);
System.out.println("System clean.");
System.out.println("Adpating uploader for preformance...");
Thread.sleep(5000);
System.out.println("Checking required drivers, this may take afew minutes...");
Thread.sleep(200000);
System.out.println("Begining initialization...");
Thread.sleep(2500);
public void initializing() throws InterruptedException{
try{
String osType = System.getProperty("os.arch");
System.out.println("Initializing files and dirs...");
Thread.sleep(60000);
System.out.println("Creating back-ups for " + osType + "...");
System.out.println("Back-ups created.");
Thread.sleep(123456);
System.out.println("Creating Restore point for " + osType + "...");
System.out.println("Restore point created.");
Thread.sleep(200000);
System.out.println("Gathering required suer data...");
Thread.sleep(5000);
}catch (Exception e){
System.out.println("Exception caught =" + e.getMessage());
</sub class>
please be gentle with your anwsers im still kinda new to java, but know enough to understand most things.
thanks!That's not a subclass, it doesn't extend anything (except Object of course). However the problem is either that you didn't compile it, or if you did, then the compiled class (which is a file named loadercontent.class) isn't in the classpath when you compile the "main" class.
Oh, and by the way, there's a couple of those messages which your code displays on the console which don't have spelling errors. -
JEditorPane (or subclasses) and a class that extends JPanel
hello to all,
i'm realizing an application with Swing.
i have realized a class that extends JPanel(called "PanelLayer") and, other to draw a ruler as Office 2003, it must contain an other subclass of JPanel (called "PanelLayer") that, in turn, will contain a JEditorPane.
the problem is strange: i should continue in moviment the mouse to look well the JEditorPane (or subclasses)
the URL is a image of the result that i get...
URL : http://phantom89.helloweb.eu/img/img.jpg
codes:
public class Layer extends JPanel implements ComponentListener{
private static final long serialVersionUID = 1L;
private Rectangle2D.Double areaCentrale = new Rectangle2D.Double(100,100,850,1285);
private double larghFoglio = 21.0*50;
private double altFoglio = 29.7*50;
private double zoom = 1.0;
private JScrollPane sp = new JScrollPane(this);
private Rectangle2D.Double posFoglio = new Rectangle2D.Double();
private int lastX,lastY;
private PanelLayer pl;
private Point mouse = null;
private JEditorPane text;
public Layer(PanelLayer pl){
this.setLayout(null);
this.pl = pl;
this.setPreferredSize(new Dimension((int)(40+larghFoglio*zoom), (int)(100+altFoglio*zoom)));
areaCentrale = new Rectangle2D.Double(100*zoom,100*zoom,850*zoom,1285*zoom);
sp.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
sp.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
//try{
text = new JEditorPane();
text.setBounds(50,50,200,200);
this.add(text);
//}catch(IOException e){}
lastX = sp.getHorizontalScrollBar().getValue();
lastY = sp.getVerticalScrollBar().getValue();
this.addComponentListener(this);
this.addMouseListener(this);
this.addMouseMotionListener(this);
public void paintComponent(Graphics g){
if(posFoglio.height + posFoglio.width == 0){
this.posFoglio = new Rectangle2D.Double((this.getWidth()-larghFoglio*zoom)/2,50,larghFoglio*zoom,altFoglio*zoom);
Graphics2D g2d = (Graphics2D)g;
g2d.setPaint(Color.lightGray);
g2d.fillRect(0,0,this.getWidth(),this.getHeight());
g2d.translate((this.getWidth()-larghFoglio*zoom)/2,50);
g2d.setPaint(Color.black);
g2d.draw(new Rectangle2D.Double(0,0,larghFoglio*zoom,altFoglio*zoom));
g2d.setPaint(Color.white);
g2d.fill(new Rectangle2D.Double(1,1,larghFoglio*zoom-1,altFoglio*zoom-1));
g2d.setPaint(Color.blue);
g2d.draw(areaCentrale);
public JScrollPane getJScrollPane(){
return sp;
public Rectangle2D.Double getDimFoglio(){
return this.posFoglio;
public double getCmWidth(){
return larghFoglio*zoom/50+((larghFoglio*zoom/50)%1 <= getIncr() ? 0 : getIncr());
public double getCmHeight(){
return altFoglio*zoom/50+((altFoglio*zoom/50)%1 <= getIncr() ? 0 : getIncr());
public Point getPointMouse(){
return mouse;
public void refresh(){
lastX = sp.getHorizontalScrollBar().getValue();
posFoglio.x = (this.getWidth()-larghFoglio*zoom)/2-lastX;
public double getIncr(){
return zoom/2;
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public void mouseDragged(MouseEvent e) {}
public void mouseMoved(MouseEvent e) {
mouse = e.getPoint();
mouse.x -= sp.getHorizontalScrollBar().getValue();
mouse.y -= sp.getVerticalScrollBar().getValue();
pl.repaint();
public void componentHidden(ComponentEvent e) {}
public void componentMoved(ComponentEvent e) {
lastX = sp.getHorizontalScrollBar().getValue();
posFoglio.x = (this.getWidth()-larghFoglio*zoom)/2-lastX;
lastY = sp.getVerticalScrollBar().getValue();
posFoglio.y = 50-lastY;
pl.repaint();
public void componentResized(ComponentEvent e) {
this.repaint();
pl.repaint();
public void componentShown(ComponentEvent e) {}
public class PanelLayer extends JPanel implements MouseWheelListener,MouseInputListener{
private static final long serialVersionUID = 1L;
private Layer layer;
private JScrollPane sp = null;
private boolean visualizzaMouse = false;
public PanelLayer(){
this.setLayout(null);
layer = new Layer(this);
layer.addMouseListener(this);
layer.addMouseMotionListener(this);
public void paintComponent(Graphics g){
if(layer.getDimFoglio().getWidth()+layer.getDimFoglio().getHeight() == 0){
layer.setSize(50,50);
if(sp == null){
sp = layer.getJScrollPane();
sp.addMouseWheelListener(this);
sp.setBounds(30,30,this.getWidth()-30,this.getHeight()-30);
this.add(sp);
}else{
layer.refresh();
sp.setBounds(30,30,this.getWidth()-30,this.getHeight()-30);
Graphics2D g2d = (Graphics2D)g;
g2d.setPaint(new Color(153,255,153));
g2d.fill(new Rectangle2D.Double(0,0,this.getWidth(),30));
g2d.fill(new Rectangle2D.Double(0,0,30,this.getHeight()));
g2d.setPaint(Color.black);
g2d.drawLine(0,0,this.getWidth(),0);
g2d.drawLine(0,30,this.getWidth(),30);
g2d.drawLine(0,0,0,this.getHeight());
g2d.drawLine(30,0,30,this.getHeight());
for(double i=0,j=0;i<=layer.getCmWidth();i+=layer.getIncr(),j++){
if(j%2==0){
g2d.drawLine((int)(layer.getDimFoglio().x+31+i*50), 15,(int)(layer.getDimFoglio().x+31+i*50), 30);
g2d.drawString(String.valueOf((int)(j/2)), (float)(layer.getDimFoglio().x+31+i*50), 13);
}else{
g2d.drawLine((int)(layer.getDimFoglio().x+31+i*50), 22,(int)(layer.getDimFoglio().x+31+i*50), 30);
for(double i=0,j=0;i<=layer.getCmHeight();i+=layer.getIncr(),j++){
if(j%2==0){
g2d.drawLine(15, (int)(layer.getDimFoglio().y+31+i*50),30,(int)(layer.getDimFoglio().y+31+i*50));
g2d.drawString(String.valueOf((int)(j/2)),5,(float)(layer.getDimFoglio().y+31+i*50));
}else{
g2d.drawLine(22, (int)(layer.getDimFoglio().y+31+i*50),30,(int)(layer.getDimFoglio().y+31+i*50));
if((layer.getPointMouse() != null)&&(visualizzaMouse)){
g2d.drawLine(layer.getPointMouse().x+30,0,layer.getPointMouse().x+30,30);
g2d.drawLine(0,layer.getPointMouse().y+30,30,layer.getPointMouse().y+30);
g2d.setPaint(new Color(153,255,153));
g2d.fillRect(1,1,29,29);
int largh = layer.getJScrollPane().getVerticalScrollBar().getWidth();
g2d.fillRect(this.getWidth()-largh, 1, largh, 29);
g2d.fillRect(1, this.getHeight()-largh, 29, largh);
public void mouseWheelMoved(MouseWheelEvent e) {
JScrollBar vsb = layer.getJScrollPane().getVerticalScrollBar();
vsb.setValue(vsb.getValue()+20*e.getWheelRotation());
public void refresh(){
if((layer != null)&&(sp != null)){
layer.setSize(this.getWidth()-30,this.getHeight()-30);
sp.setViewportView(layer);
this.repaint();
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {
visualizzaMouse = true;
repaint();
public void mouseExited(MouseEvent e) {
visualizzaMouse = false;
repaint();
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public void mouseDragged(MouseEvent e) {}
public void mouseMoved(MouseEvent e) {}
}(my english isn't very good)Don't really understand what the posted code does and I can't execute the code so I don't have much to offer.
But I did notice that you don't invoke super.paintComponent(...) which means you may have garbage being painted on the panels.
If you need further help then you need to create a "Short, Self Contained, Compilable and Executable, Example Program (SSCCE)", that demonstrates the incorrect behaviour.
http://homepage1.nifty.com/algafield/sscce.html -
hi guys, this is going to drive me crazy... i don't think its a classpath...
here is my program:
package divelog;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
* @author Administrator
public class DiveLog {
private JFrame dlframe; //Not assigned yet.
private JTabbedPane tabbedPane; //Not assigned yet.
/** Creates a new instance of Class */
public DiveLog() {
// Create a frame object to add the
// application GUI components to.
dlframe = new JFrame("A Java Technology Dive Log");
// Closes from title bar
//and from menu
dlframe.addWindowListener(new WindowAdapter()
public void windowClosing(WindowEvent e)
System.exit(0);
// Tabbed pane with panels for Jcomponents
// Instantiate JTabbedPane with keyword new
tabbedPane = new JTabbedPane(SwingConstants.LEFT);
// Calls method to set color
tabbedPane.setBackground(Color.blue);
tabbedPane.setForeground(Color.white);
//A method that adds individual tabs to the
//tabbedpane object.
populateTabbedPane();
//Calls the method that builds the menu
buildMenu();
dlframe.getContentPane().add(tabbedPane);
dlframe.pack();
dlframe.setSize(765, 690);
dlframe.setBackground(Color.white);
dlframe.setVisible(true);
}// Ends constructor
private void populateTabbedPane()
// Create tabs with title
tabbedPane.addTab(
"Welcome",
null,
new Welcome(),
"Welcome to the Dive Log");
tabbedPane.addTab(
"Diver Data",
null,
new Diver(),
"Click here to enter diver data");
tabbedPane.addTab(
"Log Dives",
null,
new Dives(),
"Click here to enter dives");
tabbedPane.addTab(
"Statistics",
null,
new Statistics(),
"Click here to calculate" +
" dive statistics");
tabbedPane.addTab(
"Favorite Web Site",
null, new WebSite(),
"Click here to see a web site");
tabbedPane.addTab(
"Resources",
null,
new Resources(),
"Click here to see a list " +
"of resources");
}//Ends populateTabbedPane method
// Method header
private void buildMenu()
{ // Opens buildMenu method
JMenuBar mb = new JMenuBar();
JMenu menu = new JMenu("File");
JMenuItem item = new JMenuItem("Exit");
//Closes the application from the Exit
//menu item.
item.addActionListener(new ActionListener()
{ // Opens addActionListener method
public void actionPerformed(ActionEvent e)
{ // Opens actionPerformed method
System.exit(0);
} // Closes actionPerformed method
}); // Closes addActionListener method
menu.add(item);
mb.add(menu);
dlframe.setJMenuBar(mb);
} //Ends the buildMenu method
public static void main(String[] args)
DiveLog d1 = new DiveLog();
} //end of class
and here is one of the classes:
package divelog;
* Dives.java
* Created on October 31, 2004, 2:14 PM
import javax.swing.*;
//import for layout manager
import java.awt.*;
* @author Administrator
public class Dives extends JPanel{
/** Creates a new instance of Dives */
public Dives() {
basically the class does nothing "for now" but still my program is giving me an error message. i tried to set the classpath to C:\divelog 'where my classes are' but still keep getting the following errors:
DiveLog.java [78:1] cannot resolve symbol
symbol : class Dives
location: class divelog.DiveLog
new Dives(),
^
i am getting six errors for the six classes. i tried everything but still can't get it to work. Its a simple divelog example that i followed!.
does anyone see any problem? please let me know
thanksthats right, i mounted C:\divelog at first and thats
why I couldn't access none of the classes, but after i
mounted C:\ i was able to access them but only with
javac command and not from the compiler itself.I don't understand what you mean here.
>
do you think re-installing the compiler would fix the
problem? Unlikely unless you have corrupted your current installation! It is more than likely a 'path' or 'classpath' problem.
First check that the compiler and runtime system can be accessed.
1) Try ' javac -version'
This should give you a list of options. If you get " 'javac' not recognised...." then you need to add the directory containing 'javac.exe' to your path (not classpath).
For example, if your jdk is located at c:\j2sdk1.4.1 then you will have to add "c:\j2sdk1.4.1\bin" to your path using Control Panel->System->Advanced->Environmental Variables.
2) Now try 'java -version'
This should say which version of java you are using. If it now gives " 'java' not recognised...." then you need to add the bin directory of your JRE to your path. If you have the JDK bin directory in your class path then his should be enough but...
When you get 'java' and 'javac' working then if your program still does not work then it is probably a classpath problem. We would need to see what commands you are typing to go further. -
how do i open a web page with VeriSign Class 3 Extended Validation SSL SGC SS CA ?
Hi
I am not suprised no one answered your questions, there are simply to many of them. Can I suggest you read the faq on 'how to get help quickly at - http://forums.adobe.com/thread/470404.
Especially the section Don't which says -
DON'T
Don't post a series of questions in a single post. Splitting them into separate threads increases your chances of a quick answer.
PZ
www.pziecina.com -
Unable to compile class for JSP
Please can anyone help me to solve this.
Actually,this is the condition.
In my db,there is a table called UserPassword, which has 4
fields(empNo,UserName,password,level). Now I want to do these things:
When the user submits the data to create a new account via HTML form, it submits the data to the file called CreateAcc.jsp. In this file it perform some logic,here are they.
1)To check the empNo,if it is already exist in the DB,
if empNo =exist then display error.(record already exist)
if empNo =notexist then do task 2).
2)check the UserName,if it is already exist in the db,
if UserName=exist then display error.(because it's a primary key)
if UserName=notexist then do task 3).
3)Create a new user account and save it to the db.
To do these tasks,I never create a new objects for the tasks 1) and 2).
only for task 3)create an object.
Is it the right way?
Here is the file CreateAcc.jsp
<%@ page language="java" %>
<%@ page import="core.UserAccManager" %>
<%@ page import="data.UserPassword" %>
<jsp:useBean id="UserAccManager" class="core.UserAccManager" scope="session"/>
<jsp:setProperty name="UserAccManager" property="*"/>
<jsp:useBean id="UserPassword" class="data.UserPassword" scope="session"/>
<jsp:setProperty name="UserPassword" property="*"/>
<%
String nextPage ="MainForm.jsp";
if(UserPassword.verifyEmpno()){
if(UserPassword.verifyUsername()){
if(UserPassword.createAcc()) nextPage ="MsgAcc.jsp";
}else{
nextPage="UserNameExist.jsp";
else{
nextPage="UserAccError.jsp";
%>
<jsp:forward page="<%=nextPage%>"/>The directory structure:
UserPassword.java- F:/Project/core/data/UserPassword.java
UserAccManager.java - F:/Project/core/UserAccManager.java
Now both are compiling.I put the class files into the TOMCAT,as follows.
UserAccManager.class - webapps/mySystemName/WEB-INF/classes/core/
UserPassword.class - webapps/mySystemName/WEB-INF/classes/core/data/
Here is the full code of the file UserAccManager.java.
package core; //Is this right?
import data.UserPassword; //Is this right?
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public final class UserAccManager{
private static final String DRIVER = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/superfine";
private static Connection connection;
private static PreparedStatement pstmt1;
private static PreparedStatement pstmt2;
private static PreparedStatement pstmt3;
private UserAccManager(){
// Initializes the connection and statements
public static void initConnection() {
if (connection == null) {
try {
String sql;
// Open the database
Class.forName(DRIVER).newInstance();
connection = DriverManager.getConnection(URL);
// Prepare the statements
sql = "SELECT * FROM UserPassword where empNo= ?";
pstmt1 = connection.prepareStatement(sql);
sql = "SELECT UserName FROM UserPassword where UserName= ?";
pstmt2 = connection.prepareStatement(sql);
sql ="INSERT INTO UserPassword VALUES(?,?,?,?)";
pstmt3 = connection.prepareStatement(sql);
catch (Exception ex) {
System.err.println(ex.getMessage());
// Closes the connection and statements
// Method to be called by main class when finished with DB
public void closeConnection() {
//same as previous
public static boolean verifyEmpno(int empno) {
boolean emp_no_select_ok = false;
int emp = -1;
initConnection();
try {
pstmt1.setInt(1, empno);
ResultSet rs1 = pstmt1.executeQuery();
while(rs1.next()){
emp=rs1.getInt("empNo");
if(emp>0)
emp_no_select_ok = false;
} else{
emp_no_select_ok = true;
rs1.close();
pstmt1.close();
catch (Exception ex) {
System.err.println(ex.getMessage());
return emp_no_select_ok;
public static boolean verifyUsername(String username) {
boolean user_name_select_ok = false;
String user = "xxxx";
initConnection();
try {
pstmt2.setString(1, username);
ResultSet rs2 = pstmt2.executeQuery();
while(rs2.next()){
user=rs2.getString("UserName");
if(!user.equals("xxxx"))
user_name_select_ok = false;
} else{
user_name_select_ok = true;
rs2.close();
catch (Exception ex) {
System.err.println(ex.getMessage());
return user_name_select_ok;
public static boolean createAcc(int empno, String username, String password, int
level){
boolean create_acc_ok = false;
initConnection();
try{
//create a new object,from the UserPassword table.
UserPassword useraccount = new UserPassword();
useraccount.setEmpno(empno);
useraccount.setUsername(username);
useraccount.setPassword(password);
useraccount.setLevel(level);
//assign value for ???
pstmt3.setInt(1, useraccount.getEmpno());
pstmt3.setString(2, useraccount.getUsername());
pstmt3.setString(3, useraccount.getPassword());
pstmt3.setInt(4, useraccount.getLevel());
if(pstmt3.executeUpdate()==1) create_acc_ok=true;
pstmt3.close();
//con.close();
catch(SQLException e2){
System.err.println(e2.getMessage());
return create_acc_ok;
}here is the bean (part of it)
package data; //is it right?
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class UserPassword
private int empno;
private String username;
private String password;
private int level;
// Constructor
public UserPassword()
this.empno = empno;
this.username = username;
this.password = password;
this.level = level;
// setters and getters are here.
// public boolean verifyEmpno() {
// return UserAccManager.verifyEmpno(empno);
// public boolean verifyUsername(String username) {
// return UserAccManager.verifyUsername(username);
// These 2 methods not compile with or without para's.So I leave that job for the
//controll class UserAccManager.java.
Now my problem is this: When I submit data, there is an error;org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: -1 in the jsp file: null
Generated servlet error:
[javac] Compiling 1 source file
C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:8:
cannot access core.data.UserPassword
bad class file: C:\Program Files\Apache Group\Tomcat
4.1\webapps\HRM\WEB-INF\classes\core\data\UserPassword.class
class file contains wrong class: data.UserPassword
Please remove or make sure it appears in the correct subdirectory of the classpath.
import core.data.UserPassword;
^
1 error
Are there any mistakes? If so tell me where is it and how to change them.Please help.I try it that way, but it don't compile.
Error:core\data\UserPassword.java:package javax.servlet does not exist
import javax.servlet.*;
core\data\UserPassword.java:package javax.servlet.http does not exist
import javax.servlet.http.*;
So,I comment them only in the UserPassword.java file,and compile it again.
Then it compile well.I goto the directory to get the .class files.
But there is only UserPassword.class inside the data folder. There is not
UserAccManager.class in the core folder.
Then I try this way,I put my 2 java files in to a new folder,
F:\SystemName\com
When I try it that way, but it don't compile.
javac -classpath . -d . com\*.javaError:com\UserPassword.java:package javax.servlet does not exist
import javax.servlet.*;
com\UserPassword.java:package javax.servlet.http does not exist
import javax.servlet.http.*;
So,I comment them only in the UserPassword.java file,and compile it again.
Now both are compiling well.There was 2 class files.
I put them in to the WEB-INF/classes/com directory.
Start the server.But it gave errors:
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:68: cannot resolve symbol
symbol : variable empno
location: class org.apache.jsp.CreateAcc_jsp
if(UserPassword.verifyEmpno(empno)){
^
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:69: cannot resolve symbol
symbol : variable username
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.verifyUsername(username)){
^
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:69: non-static method
verifyUsername(java.lang.String) cannot be referenced from a static context
if(UserAccManager.verifyUsername(username)){
^
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable empno
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable username
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable password
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable level
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: non-static method
createAcc(int,java.lang.String,java.lang.String,int) cannot be referenced from a static
context
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
8 errorsTo solve the problem non-static method,I goto the UserAccManager.java file and do these
things.
package com;
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.sql.*;
//import javax.servlet.*; //otherwise it tells an error.(package
//javax.servlet does not exist)
//import javax.servlet.http.*;
public class UserAccManager {
private static final String DRIVER = "com.mysql.jdbc.Driver";
private static final String URL = "jdbc:mysql://localhost:3306/superfine";
private static Connection connection;
private static PreparedStatement pstmt1;
private static PreparedStatement pstmt2;
private static PreparedStatement pstmt3;
private UserAccManager() {
// Initializes the connection and statements
private static void initConnection() {
//same
// Closes the connection and statements
// Method to be called by main class when finished with DB
public static void closeConnection() {
//same
public static boolean verifyEmpno(int empno) {
// same.
public static boolean verifyUsername(String username) {
//same.
public static boolean createAcc(int empno, String username, String password, int
level){
//same
package com;
import java.io.*;
import java.sql.*;
import java.util.*;
import javax.sql.*;
//import javax.servlet.*;
//import javax.servlet.http.*;
public class UserPassword {
// same
Again compile those files and put .class filses into the WEB-INF/classes/com directory.
When i submits the data via the form it generates an error:
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 9 in the jsp file: /CreateAcc.jsp
Generated servlet error:
[javac] Compiling 1 source file
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:68: cannot resolve symbol
symbol : variable empno
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.verifyEmpno(empno)){
^
An error occurred at line: 9 in the jsp file: /CreateAcc.jsp
Generated servlet error:
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:69: cannot resolve symbol
symbol : variable username
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.verifyUsername(username)){
^
An error occurred at line: 9 in the jsp file: /CreateAcc.jsp
Generated servlet error:
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable empno
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
An error occurred at line: 9 in the jsp file: /CreateAcc.jsp
Generated servlet error:
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable username
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
An error occurred at line: 9 in the jsp file: /CreateAcc.jsp
Generated servlet error:
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable password
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
An error occurred at line: 9 in the jsp file: /CreateAcc.jsp
Generated servlet error:
C:\Program Files\Apache Group\Tomcat
4.1\work\Standalone\localhost\HRM\CreateAcc_jsp.java:70: cannot resolve symbol
symbol : variable level
location: class org.apache.jsp.CreateAcc_jsp
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
^
6 errorshere is the CreateAcc.jsp file
<%@ page language="java" %>
<%@ page import="com.UserAccManager" %>
<%@ page import="com.UserPassword" %>
<jsp:useBean id="userPassword" class="com.UserPassword" scope="request"/>
<jsp:setProperty name="userPassword" property="*" />
<%
String nextPage ="MainForm.jsp";
if(UserAccManager.verifyEmpno(empno)){
if(UserAccManager.verifyUsername(username)){
if(UserAccManager.createAcc(empno, username,password,level)) nextPage
="MsgAcc.jsp";
}else{
nextPage="UserNameExist.jsp";
else{
nextPage="UserAccError.jsp";
%>
<jsp:forward page="<%=nextPage%>"/>Please, anyone know how to send these parameters to the java file.
Thanks. -
Is it possible to create a javafx class without extending Application class ? If yes, how ?
There is no such thing as a javafx class. It is a regular java class. The Aapplication class is the entry
point for JavaFX application. You have to extend the Application class to create Javafx application . -
LoadClass (error loading a class which extends other class at run-time)
Hey!
I'm using the Reflection API
I load a class called 'SubClass' which exists in a directory called 'subdir' at run-time from my program
CustomClassLoader loader = new CustomClassLoader();
Class classRef = loader.loadClass("SubClass");
class CustomClassLoader extends ClassLoader. I have defined 'findClass(String className)' method in CustomClassLoader.
This is what 'findClass(String className)' returns:
defineClass (className,byteArray,0,byteArray.length);
'byteArray' is of type byte[] and has the contents of subdir/SubClass.
the problem:
The program runs fine if SubClass does not extend any class.
If however, SubClass extends another class, the program throws a NoClassDefFoundError. How is it conceptually different?
Help appreciated in Advance..
Thanks!Because i'm a newbie to the Reflection thing, i'm notI don't see reflection anywhere. All I see is class loading.
sure what role does the superclass play when i'm
trying to load the derived class and how to get away
with the errorWell... hint: all the superclass's stuff is not copied into the subclass.
I am quite sure it fails to load the superclass because of classpath issues. -
Calls to methods in a class that extends Thread
Hello,
I have some code that I am initiating from within an ActionListener that is part of my programs GUI. The code is quite long winded, at least in terms of how long it takes to perform. The code runs nicely, however once it is running the GUI freezes completely until operations have completed. This is unacceptable as the code can take up to hours to complete. After posting a message on this forum in regard to the freezing of the GUI it was kindly suggested that I use multi-threading to avoid the unwelcome program behaviour.
The code to my class is as follows:
public class FullURLAddress
private boolean success_flag = true;
private BufferedReader iN;
private Document dT;
private EditorKit kT;
private Element lmNt;
private ElementIterator lmIterate;
private XURL[] compAddress;
private int countX = 0; //Tracks Vector vT's size.
private int countY = 0; //Tracks Vector vS's size.
private int xURLcount = 0; //Tracks XURL objects instantiated by this FullURLAddress object.
private SimpleAttributeSet simpAtSet;
private String aURL; //Contains original (Xtended) URL!
private String fileType;
private String indexContent;
private String[] parseURL;
private String[] finalStrings;
private String[] sortStrings;
private URL indexConnect;
private URLConnection iconn;
private Vector vT; //Stores href information, from targeted URL's HTML souce code.
private Vector vS; //Stores sorted HREF info ".jpg" and ".gif" only (no: png, tiff, etc).
public FullURLAddress(String aURL)
this.aURL = aURL;
try{
indexConnect = new URL(aURL);
iconn = indexConnect.openConnection();
iN = new BufferedReader(new InputStreamReader(iconn.getInputStream()));
/* Document creation, analysis objects instantiated */
vT = new Vector();
vS = new Vector();
kT = new HTMLEditorKit();
dT = kT.createDefaultDocument();
dT.putProperty("IgnoreCharsetDirective", Boolean.TRUE);
/* Iterate through document and store all HREF values */
kT.read(iN, dT, 0);
lmIterate = new ElementIterator(dT);
while((lmNt = lmIterate.next()) != null)
simpAtSet = (SimpleAttributeSet)lmNt.getAttributes().getAttribute(HTML.Tag.A);
if(simpAtSet != null) //As long as there are A tags to be read...
vT.addElement(simpAtSet.getAttribute(HTML.Attribute.HREF));
countX++;//Tracks number of HREF occurences occur, giving better control of the Vector.
}catch(MalformedURLException e){
success_flag = false;
System.out.println("FullURLAddress object has encountered a "+
"MalformedURLException at: "+aURL);
}catch(IOException e){
e.getMessage();
success_flag = false;
}catch(BadLocationException e){
e.getMessage();
success_flag = false;
/* Searches through all HREF attributes that are now stored in Vector
vT for occurences of the character string ".htm" */
sortStrings = new String[countX];
for(int i=0;i<countX;i++)
sortStrings[i] = (String)vT.elementAt(i); //Vector Strings transfered into array.
if(sortStrings.endsWith("gif")) // Does href value end with ".jpg"?
vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
countY++;
if(sortStrings[i].endsWith("GIF"))
vS.addElement(sortStrings[i]);
countY++;
if(sortStrings[i].endsWith("jpg")) // Does href value end with ".jpg"?
vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
countY++;
if(sortStrings[i].endsWith("JPG"))
vS.addElement(sortStrings[i]);
countY++;
finalStrings = new String[countY];
for(int j=0;j<countY;j++)
finalStrings[j] = (String)vS.elementAt(j);
public int getCount()
return countY; //Returns number of instances of htm strings
} //ending with either "jpg" or "gif".
public String[] xurlAddressDetails()
return finalStrings;
I have changed the above code to make use of multithreading by making this class extend Thread and implementing the run() method as follows:
public class FullURLAddress extends Thread
private boolean success_flag = true;
private BufferedReader iN;
private Document dT;
private EditorKit kT;
private Element lmNt;
private ElementIterator lmIterate;
private XURL[] compAddress;
private int countX = 0; //Tracks Vector vT's size.
private int countY = 0; //Tracks Vector vS's size.
private int xURLcount = 0; //Tracks XURL objects instantiated by this FullURLAddress object.
private SimpleAttributeSet simpAtSet;
private String aURL; //Contains original (Xtended) URL!
private String fileType;
private String indexContent;
private String[] parseURL;
private String[] finalStrings;
private String[] sortStrings;
private URL indexConnect;
private URLConnection iconn;
private Vector vT; //Stores href information, from targeted URL's HTML souce code.
private Vector vS; //Stores sorted HREF info ".jpg" and ".gif" only (no: png, tiff, etc).
public FullURLAddress(String aURL)
this.aURL = aURL;
public void run()
try{
indexConnect = new URL(aURL);
iconn = indexConnect.openConnection();
iN = new BufferedReader(new InputStreamReader(iconn.getInputStream()));
/* Document creation, analysis objects instantiated */
vT = new Vector();
vS = new Vector();
kT = new HTMLEditorKit();
dT = kT.createDefaultDocument();
dT.putProperty("IgnoreCharsetDirective", Boolean.TRUE);
/* Iterate through document and store all HREF values */
kT.read(iN, dT, 0);
lmIterate = new ElementIterator(dT);
while((lmNt = lmIterate.next()) != null)
simpAtSet = (SimpleAttributeSet)lmNt.getAttributes().getAttribute(HTML.Tag.A);
if(simpAtSet != null) //As long as there are A tags to be read...
vT.addElement(simpAtSet.getAttribute(HTML.Attribute.HREF));
countX++;//Tracks number of HREF occurences occur, giving better control of the Vector.
}catch(MalformedURLException e){
success_flag = false;
System.out.println("FullURLAddress object has encountered a "+
"MalformedURLException at: "+aURL);
}catch(IOException e){
e.getMessage();
success_flag = false;
}catch(BadLocationException e){
e.getMessage();
success_flag = false;
/* Searches through all HREF attributes that are now stored in Vector
vT for occurences of the character string ".htm" */
sortStrings = new String[countX];
for(int i=0;i<countX;i++)
sortStrings[i] = (String)vT.elementAt(i); //Vector Strings transfered into array.
if(sortStrings.endsWith("gif")) // Does href value end with ".jpg"?
vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
countY++;
if(sortStrings[i].endsWith("GIF"))
vS.addElement(sortStrings[i]);
countY++;
if(sortStrings[i].endsWith("jpg")) // Does href value end with ".jpg"?
vS.addElement(sortStrings[i]); // If so add it to the sorted Vector vS.
countY++;
if(sortStrings[i].endsWith("JPG"))
vS.addElement(sortStrings[i]);
countY++;
finalStrings = new String[countY];
for(int j=0;j<countY;j++)
finalStrings[j] = (String)vS.elementAt(j);
/* What happens with these methods, will they need to have their
own treads also? */
public int getCount()
return countY; //Returns number of instances of htm strings
} //ending with either "jpg" or "gif".
public String[] xurlAddressDetails()
return finalStrings;
Are there any special things that I need to do in regard to the variables returned by the getCount() and xurlAddressDetails() methods. These methods are called by the code that started the run method from within my GUI. I don't understand which thread these methods are running in, obviously there is an AWT thread for my GUI and then a seperate thread for my FullURLAddress objects, but does this new thread also encompass the getCount() and xurlAddressDetails() methods?
Please explain.
This probably sounds a little wack, but I don't understand what thread is responisble for the methods in my FullURLAddress class aside of course from the run() method which is obvious. Any help will be awesome.
Thanks
DavoThreads are part of code that allows you to run multiple operations "simultaneously". "Simultaneously", because threads are not run actually simultaneously in any one-CPU machine. Since you most propably have only one CPU in your system, you can only execute one CPU instruction at time. Basically this means that your CPU can handle only one java-operation at time. It does not matter if you put some code in thread and start it, it will still take up all CPU time as long as the thread runs.
So you would need a way to let other threads run also, for that purpose thread contains a yield feature that allows you to give time for other threads to run.
http://java.sun.com/j2se/1.4.1/docs/api/java/lang/Thread.html#yield()
You need to use thread's yield() method in your thread code, in a place you want to give other threads time to run. Also bear in mind that if you yield your first thread run to allow second thread to run, you also need to add yield to the second thread also. If you don't, after yielding the first thread, the second thread will eat up all CPU time until it finishes, thus meaning the rest of your first thread will be run after second thread is done.
One good place to execute yield() is usually at the end of a loop, for example 'for' or 'while' loop. This way you prevent for example while-deadlocks.
Here is a java thread tutorial, worthy reading:
http://java.sun.com/docs/books/tutorial/essential/threads/ -
Unable to compile class for JSP. apache-tomcat-6. What could be wrong?
Hello, I am new to JSP and I am trying a very basic jsp and class file on Windows XP. I get the Unable to compile class for JSP.
Steps that I have done:
javac ch06_01.java , placed the ch06_01.class under
C:\Apps\apache-tomcat-6.0.16\webapps\ch06\WEB-INF\classes
Then grabbed the ch06_02.jsp and placed it under
C:\Apps\apache-tomcat-6.0.16\webapps\ch06\
When I run it (by placing this into Explorer or Firefox URL
http://localhost:8080/ch06/ch06_02.jsp) I get the error further
below. Things I have done and made sure they are in place are:
set up JAVA_HOME to C:\Apps\jdk1.6.0_06
Using CATALINA_BASE: C:\Apps\apache-tomcat-6.0.16
Using CATALINA_HOME: C:\Apps\apache-tomcat-6.0.16
Using CATALINA_TMPDIR: C:\Apps\apache-tomcat-6.0.16\temp
Using JRE_HOME: C:\Apps\jre1.6.0_06
I did a google on the error and I found people saying to place the
tools.jar from the jsk into the lib directory under CATALINA_HOME. But
the examples still don't work. What step could I be missing? Your help is greatly
appreciated.
This is the simple jsp file:
<%@ page import="ch06_01" %>
<HTML>
<HEAD>
<TITLE>Using a JavaBean</TITLE>
</HEAD>
<BODY>
<H1>Using a JavaBean</H1>
<% ch06_01 messager = new ch06_01(); %>
The message is: <%= messager.msg() %>
</BODY>
</HTML>
this is the simple ch6_01 java file:
public class ch06_01
public ch06_01()
public String msg()
return "Hello from JSP!";
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented
it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 6 in the generated java file
The import ch06_01 cannot be resolved
An error occurred at line: 9 in the jsp file: /ch06_02.jsp
ch06_01 cannot be resolved to a type
6: <BODY>
7: <H1>Using a JavaBean</H1>
8:
9: <% ch06_01 messager = new ch06_01(); %>
10:
11: The message is: <%= messager.msg() %>
12:
An error occurred at line: 9 in the jsp file: /ch06_02.jsp
ch06_01 cannot be resolved to a type
6: <BODY>
7: <H1>Using a JavaBean</H1>
8:
9: <% ch06_01 messager = new ch06_01(); %>
10:
11: The message is: <%= messager.msg() %>
12:
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:316)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:294)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:281)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Edited by: indikon1 on Jun 12, 2008 1:18 PM
I just updated the directories of the variables to reflect the current status of my system.What is wrong is that you are using an "old" jsp tutorial :-)
Since Java 1.4, JSPs have been unable to access classes in the "default" package.
What you need to do:
Put the java class ch06_01 in a package.
Steps to do this
- Edit ch06_01 and add the following to the very top of the file (without the quotes): "package mypackage;"
- create a folder "mypackage"
- move ch06_01.java into that folder
- compile that class (now in the mypackage package)
- place ch06_01.class under C:\Apps\apache-tomcat-6.0.16\webapps\ch06\WEB-INF\classes\mypackage
In your jsp:
<%@ page import="mypackage.ch06_01" %>
I would suggest using a more up-to-date tutorial that uses JSTL.
Take a look at this [Apache Tomcat tutorial|http://www.coreservlets.com/Apache-Tomcat-Tutorial/index.html] -
Unable to compile class for JSP--- help me plz!!!!!
hi friends;
Pease suggest me where i am wrong, i think javabean is not instantiated in jsp file.may be it is related to the classpath of javabean. i have not set any variable for javabean classpath. and i put javabean class file in
TOMCAT_HOME/webapps/test3/WEB-INF/UseDta.class
and all the jsp and html in /test3. my jsp an javabeans are--
1. GetName.html
<HTML>
<BODY>
<FORM METHOD=POST ACTION="SaveName.jsp">
What's your name? <INPUT TYPE=TEXT NAME=username SIZE=20><BR>
What's your e-mail address? <INPUT TYPE=TEXT NAME=email SIZE=20><BR>
What's your age? <INPUT TYPE=TEXT NAME=age SIZE=4>
<P><INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
2. SaveName.jsp
<jsp:useBean id="user" class="UserData" scope="session">
<jsp:setProperty name="user" property="*"/>
</jsp:useBean>
<HTML>
<BODY>
Continue
</BODY>
</HTML>
3. UserData.java
public class UserData {
String username;
String email;
int age;
public UserData(){}
public void setUsername( String value )
username = value;
public void setEmail( String value )
email = value;
public void setAge( int value )
age = value;
public String getUsername() { return username; }
public String getEmail() { return email; }
public int getAge() { return age; }
4. NextPage.jsp
<jsp:useBean id="user" class="UserData" scope="session"/>
<HTML>
<BODY>
You entered<BR>
Name: <%= user.getUsername() %><BR>
Email: <%= user.getEmail() %><BR>
Age: <%= user.getAge() %><BR>
</BODY>
</HTML>
url: http://localhost:8080/test3/GetName.html
is it related to context path??
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 2 in the jsp file: /SaveName.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\test3\org\apache\jsp\SaveName_jsp.java:44: cannot find symbol
symbol : class UserData
location: class org.apache.jsp.SaveName_jsp
UserData user = null;
^
An error occurred at line: 2 in the jsp file: /SaveName.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\test3\org\apache\jsp\SaveName_jsp.java:46: cannot find symbol
symbol : class UserData
location: class org.apache.jsp.SaveName_jsp
user = (UserData) jspxpage_context.getAttribute("user", PageContext.SESSION_SCOPE);
^
An error occurred at line: 2 in the jsp file: /SaveName.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\test3\org\apache\jsp\SaveName_jsp.java:48: cannot find symbol
symbol : class UserData
location: class org.apache.jsp.SaveName_jsp
user = new UserData();
^
3 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:437)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:497)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:476)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:464)
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 The full stack trace of the root cause is available in the Apache Tomcat/5.0.30 logs.
Apache Tomcat/5.0.30
please Reply me ASAP
i'll be glad if you reply. pleaseI am using Tomcat 6.0.
I have put my UserData class in user package and
used in below jsp(SaveName.jsp)
<%@ page import="user.UserData" %>
<jsp:useBean id="user" class="user.UserData" scope="session"/>
<jsp:setProperty name="user" property="*"/>
<HTML>
<BODY>
Continue
</BODY>
</HTML>
I have already set my classpath as C:\Documents and Settings\user\My Documents\Java\apache-tomcat-6.0.16\apache-tomcat-6.0.16\webapps\ROOT\WEB-INF\classes;
UserData class is in C:\Documents and Settings\user\My Documents\Java\apache-tomcat-6.0.16\apache-tomcat-6.0.16\webapps\ROOT\WEB-INF\classes\user
My UserData class is
package user;
public class UserData {
String username;
String email;
int age;
public UserData(){
this("","",0);
System.out.println("najn thanne puli");
public UserData(String username,String email,int age){
this.username=username;
this.email=email;
this.age=age;
public void setUsername( String value )
username = value;
public void setEmail( String value )
email = value;
public void setAge( int value )
age = value;
public String getUsername() { return username; }
public String getEmail() { return email; }
public int getAge() { return age; }
But running SaveName.jsp shows exception
org.apache.jasper.JasperException: /SaveName.jsp(2,0) The value for the useBean class attribute user.UserData is invalid.
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148)
org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1200)
org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1160)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2393)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2399)
org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343)
org.apache.jasper.compiler.Generator.generate(Generator.java:3372)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:198)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:294)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:281)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Please help me.thanks in advance.
Maybe you are looking for
-
My I POD is at least 6 years old - functions well - 60 GB version I only use it for music and PodCASTS which uses little room say 5 GB However, I have a yellow " OTHER " band which is impossible to me as I have not recorded anything else, However it
-
Instrument doesn't work on yosemite
I tried to use Instrument on my Yosemite. It gave me "this device desnt support this instrument" error.
-
Compatible Plug-ins for Logic Pro X?
Hello Apple Community, I am new to Logic Pro X, I am coming from Pro Tools. The only reason why I have purchased Logic Pro is for composing music. I love Pro Tools only for recording audio, mixing, and mastering. I was wondering if anyone knew i
-
Is it possible to write a script for Excel Chart Conversion to an ai file?
I tried to record a script and it didn't work. I will attempt to explain what I am doing (and why) and maybe you guys can tell me if it can be done or not. We are working with Excel charts and we eventually put them into InDesign for a print magazine
-
Had a nasty series of viruses hit our desktop. Mozilla will not reinstall.
Of course we have tried all the usual routes. Uninstall, redownload, ect. When we go to launch it we get a dll. error. The virus we had connected to IE on it's own and went to a million crap sites and prevented us from getting on the internet (Mozill