Initial commit
This commit is contained in:
73
samples/servlet/JacobScript.java
Normal file
73
samples/servlet/JacobScript.java
Normal file
@@ -0,0 +1,73 @@
|
||||
import javax.servlet.*;
|
||||
import javax.servlet.http.*;
|
||||
import java.io.*;
|
||||
|
||||
import com.jacob.com.*;
|
||||
import com.jacob.activeX.*;
|
||||
|
||||
public class JacobScript extends javax.servlet.http.HttpServlet
|
||||
{
|
||||
public void doGet(HttpServletRequest req,
|
||||
HttpServletResponse res)
|
||||
throws ServletException
|
||||
{
|
||||
PrintWriter out = null;
|
||||
try
|
||||
{
|
||||
res.setContentType("text/html");
|
||||
out = res.getWriter();
|
||||
// display a form
|
||||
out.println("<h1>Enter a VBScript Expression</h1>");
|
||||
out.println("<form method=\"POST\" action=\"/JacobScript\">");
|
||||
out.println("<input name=\"expr\" type=\"text\" width=64>");
|
||||
out.println("<input type=\"submit\">");
|
||||
out.println("</form>");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
out.println("<H2>Error:"+e+"</H2>");
|
||||
}
|
||||
}
|
||||
|
||||
public void doPost(HttpServletRequest req,
|
||||
HttpServletResponse res)
|
||||
throws ServletException
|
||||
{
|
||||
PrintWriter out = null;
|
||||
|
||||
try
|
||||
{
|
||||
res.setContentType("text/html");
|
||||
out = res.getWriter();
|
||||
// get what they typed in
|
||||
String expr = (String)req.getParameter("expr");
|
||||
// make sure we have a session
|
||||
HttpSession session = req.getSession(true);
|
||||
Object sControl = null;
|
||||
if (session.isNew())
|
||||
{
|
||||
// initialize the control and store it on the session
|
||||
String lang = "VBScript";
|
||||
ActiveXComponent sC = new ActiveXComponent("ScriptControl");
|
||||
sControl = sC.getObject();
|
||||
Dispatch.put(sControl, "Language", lang);
|
||||
session.putValue("control", sControl);
|
||||
}
|
||||
else
|
||||
{
|
||||
sControl = session.getValue("control");
|
||||
}
|
||||
Variant result = Dispatch.call(sControl, "Eval", expr);
|
||||
// display a form
|
||||
out.println("<h1>Enter a VBScript Expression</h1>");
|
||||
out.println("<form method=\"POST\" action=\"/JacobScript\">");
|
||||
out.println("<input name=\"expr\" type=\"text\" value=\""+expr+"\" width=64>");
|
||||
out.println("<input type=\"submit\">");
|
||||
out.println("</form>");
|
||||
out.println("<H1>Jacob Response:</H1>");
|
||||
out.println("<H2>"+result+"</H2>");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
out.println("<H2>Error:"+e+"</H2>");
|
||||
}
|
||||
}
|
||||
}
|
||||
44
samples/servlet/readme.txt
Normal file
44
samples/servlet/readme.txt
Normal file
@@ -0,0 +1,44 @@
|
||||
This sample runs in Weblogic 5.1 as a servlet.
|
||||
|
||||
1. Compile this file (make sure you have jdk1.2 installed or the
|
||||
javax.servlet.* classes in your classpath).
|
||||
2. Make sure the weblogic policy file allows native access. The easiest
|
||||
way is to replace the contents with this:
|
||||
|
||||
grant codeBase "file:d:/weblogic/-" {
|
||||
permission java.security.AllPermission;
|
||||
};
|
||||
|
||||
grant codeBase "file:/c:/classes/-" {
|
||||
permission java.security.AllPermission;
|
||||
};
|
||||
|
||||
|
||||
grant codeBase "file:${java.home}/lib/ext/-" {
|
||||
permission java.security.AllPermission;
|
||||
};
|
||||
|
||||
grant {
|
||||
permission java.security.AllPermission;
|
||||
};
|
||||
|
||||
3. Add the servlet to the weblogic.properties file:
|
||||
|
||||
weblogic.httpd.register.JacobScript=JacobScript
|
||||
|
||||
4. Either add your CLASSPATH to weblogic.classpath in startWebLogic.cmd
|
||||
or copy the com directory into weblogic/myserver/servletclasses
|
||||
|
||||
5. Copy the jacob/samples/servlet/* into weblogic/myserver/servletclasses
|
||||
6. Start weblogic
|
||||
|
||||
7. Type the url: http://localhost:7001/JacobScript into the browser
|
||||
(If you run on port 7001)
|
||||
|
||||
8. Enter a VBScript expression like:
|
||||
1+2
|
||||
Now
|
||||
"hello" & " world"
|
||||
etc.
|
||||
and watch the MS Script control (which you must have installed)
|
||||
evaluate and return the result.
|
||||
Reference in New Issue
Block a user