在JSP

2012-05-29 24 views
1

設定顯示Java內容的MacBook在JSP

我有一個調用一個獨立的Java應用程序,搜索網頁,並返回內容的JSP頁面。我正在尋找在我的JSP頁面上顯示這個內容。

我的JSP代碼 - 它調用下面JAVA

System.out.println("Test3"); 
Injector injector = Guice.createInjector(new GuiceInjector()); 
Run r = injector.getInstance(Run.class); 
r.runSliceConsumer(); 

我的JAVA - 這工作,並打印我的內容到終端窗口。

if (sliceHits == null) { 
    System.err.println("Timeout occurred while fetching slices"); 
    return; 
} 
if (!sliceHits.isEmpty()) { 
    System.out.println("Found some slices Yuhuuuu ! :-) "); 
    String sliceContent = createSlices(sliceHits); 
    System.out.println("sliceContent:"); 
    System.out.println(sliceContent); 
} 
else { 
    System.out.println("No Slices were found for this query"); 
} 

我的問題是,我想在JSP網頁上顯示上面的內容,而不僅僅是終端窗口。我認爲當連接成爲一種方式時,我的JSP調用了我的JAVA,我應該能夠顯示結果,但是我遇到了一些問題,我希望它只是使用我的語法。

我在JSP中嘗試

<div id="result-page-query" align='center'> 
<% 
    sliceContent = createSlices(sliceHits); 
    out.println(sliceContent); 
%> 
</div> 

我不知道如果我解釋這個正確的,但本質上我想在我的網頁

感謝顯示「sliceContent」的內容

編輯:

嗨由jddsantaella和Hardik米什拉以下建議我不得不進口所需的軟件包。然後我在這種情況下創建了一個對象「kContent」並執行該方法。

的解決方案是類似於下面

<% 

    Run kContent = injector.getInstance(Run.class); 
    kContent.runSliceConsumer(); 
    out.println(kContent); 
%> 
+0

您從您的嘗試中看到了什麼結果,使用<%out.println(sliceContent)%>? – pb2q

+0

@ pb2q你好。這給了我下面的錯誤Tomcat的錯誤消息,就在該行 「org.apache.jasper.JasperException:無法編譯類JSP:」 – Deepend

+0

@dystroy:'out'隱含提供JSP和可以使用打印像上面給出的代碼。 –

回答

1

你不應該在你的JSP使用Java代碼,這是不值得推薦。無論如何,你可以打印通過做這樣的事情的方法的返回值:

... 
<%=myObjetct.myMethod(...)%> 
... 

在你嘗試目前尚不清楚createSlices是。我認爲這可能是

<%=r.runSliceConsumer()%> 

假設你runSliceConsumer方法返回,不建議在JSP中使用Java代碼的東西

+0

喜jddsantaella 我認爲你是到這裏的財產以後。我玩弄它,看看我想出了什麼。 JSP是不是我的強項所以生病是試圖隨機語法組合 – Deepend

+0

嗨jddsantaella 只想說感謝FR你的幫助。我根據您的建議發佈了我的解決方案。 – Deepend

1

。 JSP主要用於演示。

二,"org.apache.jasper.JasperException: Unable to compile class for JSP是一個運行時異常。當您運行JSP時,如果先前編譯的JSP發生更改,則您的Web容器將在運行時編譯JSP。

而且,你應該add the necessary import語句在JSP

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

<%@ page import="yourpackage.slicer" %> 

和最後的開始,

<% 
    sliceContent = createSlices(sliceHits); 
    out.println(sliceContent); 
%> 

可以打印字符串從方法的返回值。只需檢查調用方法,如myObj.myMethod()