[英]During servelt running in Tomcat Server( Local) in Intellij Json object can not be loaded
我已經在Intellij中編寫了一個jsp和對應的servelt,並從Intellij在Tomcat本地服務器中運行它。 現在沒有json文件,如果我將一些普通文本作為輸出傳遞,則servlet工作正常,但顯示json對象
java.lang.NoClassDefFoundError:org / json / simple / JSONObject Servlet.UserInt.processRequest ---我已經在外部庫中導入了json-simple -1,1.jar,因此它的編譯但在servlet運行期間無法加載。 我還在網絡下一個名為lib的文件夾中創建了文件,並在其中放置了json和servet jar文件。
在這里輸入代碼
UserInt.java ---
public class UserInt extends javax.servlet.http.HttpServlet {
protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
processRequest(request,response);
}
protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
processRequest(request,response);
}
/* @Override
public String toString() {
return "UserInt{} " + super.toString();
}*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{
response.setContentType("application/json");
try{
String query=request.getParameter("searchquery");
JSONObject json = new JSONObject();
json.put("query", query);
json.put("country", "India");
String output = json.toString();
PrintWriter writer = response.getWriter();
writer.write("output");
writer.flush();
writer.close();
}
catch (Exception e){
e.printStackTrace();
}
}
}
Index.jsp ---
<form action="Servlet.UserInt" method="get" id="search-box">
<input type="text" class="search" name="searchquery" size="20" maxlength="120" placeholder="search...">
<input type="submit" class="button"value="Search">
<div class="set-parameter"><h3>User-Requirements</h3>
<i>Number of pages you want to see ?</i><input type="text" name="k" class="simple"/>
</div>
[enter image description here][1]
</form>
誰能幫我解決這個錯誤? 提前致謝!!
檢查是否導入了正確的org.json jar文件。
我在IDEA中創建了帶有pom.xml中此類依賴項的簡單項目:
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20160810</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>maven-eu.nuxeo.org</id>
<url>https://maven-eu.nuxeo.org/nexus/content/repositories/public-releases</url>
</repository>
</repositories>
Servlet:
package servlets;
import org.json.JSONObject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet ("/myservlet.do")
public class MyServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
PrintWriter out = resp.getWriter();
out.println("<html>");
out.println("<body>");
out.println("<h1>Hello Servlet Get</h1>");
JSONObject json = new JSONObject();
json.put("query", "query");
json.put("country", "India");
String output = json.toString();
out.println(output);
out.println("</body>");
out.println("</html>");
}
}
結果:
Hello Servlet Get
{"country":"India","query":"query"}
我在WildFly JBoss 10.2.0.Final上運行它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.