Ciao gente, sto provando a realizzare una servlet per il web semantico che utilizza jena.
Come prova faccio fare solo una semplicissima query sparql ASK ma mi si genera un'eccezione:
type: Exception report
message: Servlet execution threw an exception
description: The server encountered an internal error that prevented it from fulfilling this request.
exception:
javax.servlet.ServletException: Servlet execution threw an exception
root cause:
java.lang.NoClassDefFoundError: com/hp/hpl/jena/query/QueryExecutionFactory
QueryDBpedia.queryExternalSources(QueryDBpedia.java:51)
QueryDBpedia.doGet(QueryDBpedia.java:25)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
note: The full stack trace of the root cause is available in the Apache Tomcat/7.0.42 logs.
Preciso che qualsiasi altra query faccia fare alla servlet ottengo sempre un'eccezione.
Il codice della mia servlet è:
Qualcuno sa dirmi di che problema si tratta e come faccio a risolverlo???
Grazie, attendo vostre notizie...rispondete numerosi!!!
Come prova faccio fare solo una semplicissima query sparql ASK ma mi si genera un'eccezione:
type: Exception report
message: Servlet execution threw an exception
description: The server encountered an internal error that prevented it from fulfilling this request.
exception:
javax.servlet.ServletException: Servlet execution threw an exception
root cause:
java.lang.NoClassDefFoundError: com/hp/hpl/jena/query/QueryExecutionFactory
QueryDBpedia.queryExternalSources(QueryDBpedia.java:51)
QueryDBpedia.doGet(QueryDBpedia.java:25)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
note: The full stack trace of the root cause is available in the Apache Tomcat/7.0.42 logs.
Preciso che qualsiasi altra query faccia fare alla servlet ottengo sempre un'eccezione.
Il codice della mia servlet è:
Codice:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.hp.hpl.jena.query.*;
public class QueryDBpedia extends HttpServlet{
...
public void queryExternalSources(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter output = response.getWriter();
output.write("La servlet è stata invocata con il metodo " + request.getMethod()); //Serve, in fase di esecuzione, per capire con quale metodo (GET o POST) è stata invocata la servlet
String query = "ASK { }";
QueryExecution qe=null;
try {
qe = QueryExecutionFactory.sparqlService("http://it.dbpedia.org/sparql", query);
} catch (Exception e) {
output.write("Si è verificata un'eccezione nella creazione della query: " + query);
e.printStackTrace(output);
}
try {
if (qe.execAsk()) {
output.write("is UP");
}
else {
output.write("is DOWN");
}
} catch (Exception e) {
output.write("Si è verificata un'eccezione: ");
e.printStackTrace(output);
} finally {
qe.close();
}
}
}
Qualcuno sa dirmi di che problema si tratta e come faccio a risolverlo???
Grazie, attendo vostre notizie...rispondete numerosi!!!