Я добавил нативный метод в код Java-бина.
Затем я скопировал DLL-файл в папку System32.
при использовании javabean в JSP.
выдает ошибку:
HTTP-статус 500 -
тип Отчет об исключении
Сообщение * * 1013
description Сервер обнаружил внутреннюю ошибку (), которая не позволила ему выполнить этот запрос.
исключение
org.apache.jasper.JasperException: javax.servlet.ServletException: java.lang.UnsatisfiedLinkError: BeanDir.mysimplebean.sayHello()Ljava/lang/String;
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:522)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
первопричина
javax.servlet.ServletException: java.lang.UnsatisfiedLinkError: BeanDir.mysimplebean.sayHello()Ljava/lang/String;
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
org.apache.jsp.jsp.callbean_jsp._jspService(callbean_jsp.java:124)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
первопричина
java.lang.UnsatisfiedLinkError: BeanDir.mysimplebean.sayHello()Ljava/lang/String;
BeanDir.mysimplebean.sayHello(Native Method)
org.apache.jsp.jsp.callbean_jsp._jspService(callbean_jsp.java:112)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note Примечание Полная трассировка стека основной причины доступна в журналах Apache Tomcat / 6.0.20.
Apache Tomcat / 6.0.20
код Java-бина:
package BeanDir;
import java.util.*;
//This file must be compiled Manually using javac
//cd D:\tomcat\webapps\examples\WEB-INF\classes\BeanDir\mysimplebean.java
public class mysimplebean
{
static
{
String s=System.getProperty("java.library.path");
System.setProperty("java.library.path",s);
System.loadLibrary("HelloWorld");
}
public String getceoname()
{
String ceonameval = "Tom Hanks CEO of Tom Hanks INC";
return ceonameval;
}
public String ceoemail()
{
String ceoemailval = "tom@tomhanksinc.com";
return ceoemailval;
}
public double findtakehome(int salary,String designation)
{
double takehomeamt;
if(designation=="Developer")
{
takehomeamt = salary+salary*0.15; //15 % Raise in Salary
}
else
{
takehomeamt = salary+salary*0.10; //10 % Raise in Salary
}
return takehomeamt;
}
public native String sayHello();
}