2016-05-31 20 views
0

Ich bin neu in c9. Ich habe einen Openshift JBoss-Anwendungsserver & erstellt, der über GitHub in C9 importiert wurde. Ich habe eine einfache Java-Klasse in Main \ Java \ initial.class.Wie Java-Klasse von JSP-Seite aufgerufen wird? Cloud9 & OpenShift JBoss

public class initial { 


    public static void main(String[] args) { 

     String prn = disp(); 
     System.out.println(prn); 
    } 

    public static String disp() 
     { 
     String str=" JAVARANCH "; 
     return str; 
    } 
} 

Ich habe eine jsp Seite aus index.html genannt, ich bin gerade in der JSP-Seite versucht, die Variable ‚PRN‘ anzuzeigen.

<HEAD> 
    <TITLE>JBossAS7 JSP snoop page</TITLE> 
    <%@ page import="javax.servlet.http.HttpUtils,java.util.Enumeration" %> 
    <%@ page import="java.lang.management.*" %> 
    <%@ page import="java.util.*" %> 
    <%@ page import="initial" %> 
</HEAD> 
<BODY> 

<H1>WebApp JSP Snoop page</H1> 
<img src="images/jbosscorp_logo.png"> 

<h2>JVM Memory Monitor</h2> 
<input type="text" name="text1" size="100" value="<%=prn%>"> 

Aber ich bin immer unten Fehler auf der Seite JSP:

org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 10 in the generated java file 
The import initial cannot be resolved 

    An error occurred at line: 15 in the jsp file: /snoop.jsp 
    prn cannot be resolved to a variable 
    12: <img src="images/jbosscorp_logo.png"> 
    13: 
    14: <h2>JVM Memory Monitor</h2> 
    15: <input type="text" name="text1" size="100" value="<%=prn%>"> 
    16: 
    17: <table border="0" width="100%"> 
    18: 

Wie interagieren ich mit einer Java-Klasse von meinem JSP? danke.

BEARBEITEN wegen zwei Antworten: Ich denke, das Hauptproblem ist: die Klasse 'initial' wird nicht erfolgreich importiert. Mein Anruf bei Prn war falsch, das verstehe ich jetzt, aber der Import selbst funktioniert nicht. einige vorgeschlagen, die Klasse in einem Paket zu haben. Aber Cloud9 IDE hat keine Option zum Erstellen eines Pakets.

org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 10 in the generated java file 
The import initial cannot be resolved 
+0

Ich bin kein großer Java-Experte, aber ich denke, dass 'prn' nur im Rahmen von main existiert, also wenn Sie main innerhalb Ihrer JSP aufgerufen haben, die die gesuchte Zeichenfolge anzeigen könnte. 'disp' kann es auch tun, weil es auch statisch ist. –

Antwort

0

Wenn Sie versuchen, diese:

Java-Klasse:

public class Initial { 

    public static String getDisp() { 
     return "JAVARANCH"; 
    } 
} 

JSP-Datei:

<HEAD> 
     <TITLE>JBossAS7 JSP snoop page</TITLE> 
     <%@ page import="javax.servlet.http.HttpUtils,java.util.Enumeration" %> 
     <%@ page import="java.lang.management.*" %> 
     <%@ page import="java.util.*" %> 
     <%@ page import="Initial" %> 
    </HEAD> 
    <BODY> 
     <H1>WebApp JSP Snoop page</H1> 
     <img src="images/jbosscorp_logo.png"> 

     <h2>JVM Memory Monitor</h2> 
     <input type="text" name="text1" size="100" value="<%=Initial.getDisp()%>"> 
    </BODY> 
0

Sie können Ihre Klasse von Ihrem jsp zugreifen, indem Sie die folgenden Zugabe.

<input type="text" name="text1" size="100" value="<%= initial.disp() %>"> 

oder durch

<%  
String prn = initial.disp(); 
%> 

<input type="text" name="text1" size="100" value="<%= prn %>"> 

Bekanntmachung eines jsp scriptlet vor Ihrer Eingabe Zugabe ich Ihre Methode disp bin mit() nicht main(). Main ist statische Leere ohne Rückkehr.