Calling a servlet in an ADFFaces pages
Hi All,
I have this code:
public void handleReturn(ReturnEvent returnEvent) {
// Add event code here...
if (returnEvent.getReturnValue() != null)
setLongAddressType( (Long) returnEvent.getReturnValue());
// System.out.println("Value from the dialog box: "+getLongAddressType().toString());
FacesContext fctx = FacesContext.getCurrentInstance();
ExternalContext ectx = fctx.getExternalContext();
try {
ectx.redirect(((HttpServletRequest)ectx.getRequest()).getContextPath() +
"/selfMailerTranscript?id="+UserSystemState.retrieveUserId()+
"?addr="+getLongAddressType().toString() );
catch (IOException e) {
e.printStackTrace();
}I runs the servlet and displays a PDF document. What I like it to do is bring the PDF up in a new window. We've done this using an a href tag like this:
<jsf-layout:a href="#{facesContext.externalContext.requestContextpath}/servletNameHere" ...
I'm looking for the ExternalContext method that will open a new window instead of redirect. Anyone know what that is?
Thanks in advance,
Dave
Hello,
Why not open a dialog(pop up) page.
And put the code you provided in that separate dialog page?
-Anton
Similar Messages
-
Calling a servlet in a HTML page
hi evryone,
I'm new to servlets so i'm trying to create some simple applications to understand how it all works. The thing i'm trying to do is calling a servlet in a HTML page. I've already installed a Tomcat web server and I've created a servlet called Hello.
public class Hello extends HttpServlet{
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException{
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String name = req.getParameter("name");
out.println("<HTML>");
out.println("<HEAD><TITLE>Hello, " + name + "</TITLE></HEAD>" );
out.println("<BODY>");
out.println("Hello, " + name);
out.println("</BODY></HTML>");
public String getServletInfo(){
return "testing servlet OK";
}In my HTML page I've written the follwing code:
<HTML>
<HEAD>
<TITLE>Just say hello</TITLE>
</HEAD>
<BODY>
<FORM METHOD=POST ACTION="../servlet/Hello">
What's your name?
<INPUT TYPE=TEXT NAME="name"><P>
<INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>After running this HTML I get a text box and I thing I'm trying to do is, when I click on the button, the servlet will be loaded. However, the servlet can't be found and instead I get an error:
type Status report
message /servlet/Hello
description The requested resource (/servlet/Hello) is not available.
I suppose both file are in their approriate directories, but my class file still has the class extension. Do I need to change this? I hope that someone can help me.
Thanks in advance!hi,
the servlet wasn't in a package, so I changed that. It seems that I get an other error now:
HTTP Status 503 - Servlet servlet/Hello is currently unavailable
type Status report
message Servlet servlet/Hello is currently unavailable
description The requested service (Servlet servlet/Hello is currently unavailable) is not currently available.
I still don't know what I may have forgotten, so i'm gonna resume what i have done till now.
the servlet: (Hello.class)
package servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Hello extends HttpServlet{
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException{
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String name = req.getParameter("name");
out.println("<HTML>");
out.println("<HEAD><TITLE>Hello, " + name + "</TITLE></HEAD>" );
out.println("<BODY>");
out.println("Hello, " + name);
out.println("</BODY></HTML>");
public String getServletInfo(){
return "test servlet OK.";
}the HTML page (testServlet.html)
<HTML>
<HEAD>
<TITLE>Just say hello</TITLE>
</HEAD>
<BODY>
<FORM METHOD=GET ACTION="../servlet/Hello">
What's yoir name?
<INPUT TYPE=TEXT NAME="name"><P>
<INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>the web.xml file
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>
<servlet>
<servlet-name>servlet/Hello</servlet-name>
<servlet-class>servlet/Hello</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servlet/Hello</servlet-name>
<url-pattern>/servlet/Hello</url-pattern>
</servlet-mapping>
</web-app>paths of these files:
- Hello.class => D:\Tomcat 4.1\webapps\ROOT\servlet
- testServlet.html => D:\Tomcat 4.1\webapps\ROOT\more
( - web.xml => D:\Tomcat 4.1\webapps\ROOT\WEB-INF)
Thanks for your help!!! -
Can we Call a Servlet from a OA Page?
Hi All
My requirement is to call a servlet's doPost method from ProcessFormRequest.
I have created one custom OA page. One submit button is there on OA page.When i click submit button it will go to controller's proessFormRequest method and from this method i have to call servlet's doPost method.
Can we do that?
Please Suggest
Best Regards
MajidHi Majid,
You can use the following method.
pageContext.setForwardURL("ABC.jsp",
null, // not necessary with KEEP_MENU_CONTEXT
OAWebBeanConstants.KEEP_MENU_CONTEXT, // no change to menu context
null, // No need to specify since we're keeping menu context
hashmap, // params, // request parameters
true, // retain the root application module
OAWebBeanConstants.ADD_BREAD_CRUMB_NO ,// display breadcrumbs
OAWebBeanConstants.IGNORE_MESSAGES );//
Thanks
Anoop -
Calling a servlet from a JSP page using the J2EE reference implementation
I have a JSP with an include tag as follows: <jsp:include page="servlet/ConnectionServlet" flush="true" />
When I use JRUN it works fine. I created an ear file and ported
the application to the J2EE reference implementation. When running the app under the J2EE reference implementation the ConnectionServlet is never called. I figured it must a deployment issue. I tried adding the ConnectionServlet.class file to the WEB-INF\classes file as servlet\ConnectionServlet.class but the JSP still can't find the servlet. Any ideas where I've gone wrong? TIA, JoeI have a JSP with an include tag as follows:
<jsp:include page="servlet/ConnectionServlet"
flush="true" />Basically, WEB-INF/classes gets added to the classpath, so the directory structure under this folder should be identical to your package structure. If the ConnectionServlet.class is not actually in a package, then it should be directly in WEB-INF/classes (ie if "servlet" isn't actually the name of your package, don't use a WEB-INF/classes/servlet/" directory).
Then try taking out the "servlet" from your include tag, so you just have page="/ConnectionServlet" (not sure about the leading slash - try experimenting!)
if this doesn't work, try adding this to your WEB-INF/web.xml file:
<web-app><!-- the web-app tags may already be there - don't add more -->
<servlet>
<servlet-name>ConnectionServlet</servlet-name>
<servlet-class>your.full.package.here.ConnectionServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionServlet</servlet-name>
<url-pattern>/ConnectionServlet</url-pattern>
</servlet-mapping>
</web-app>
Good Luck! -
How to call a servlet in new window without toolbar from OA page
How to call a servlet in new window without toolbar from a OA page?Please provide sample code
I have tried with the way suggested in Mukul's blog using javascript in Destination URI property.
I tried to open a OA Page and from which forwarded it to a servlet..
It is showing the error:
Error Page
Exception Details.
oracle.apps.fnd.framework.OAException: The application id or shortname () you entered does not exist.
at oracle.apps.fnd.framework.webui.OAPageErrorHandler.prepareException(OAPageErrorHandler.java:1223)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1969)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:502)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:423)
at oa_html._OA._jspService(_OA.java:86)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:385)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:259)
at oracle.jsp.JspServlet.internalService(JspServlet.java:178)
at oracle.jsp.JspServlet.service(JspServlet.java:148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at oracle.jsp.provider.Jsp20RequestDispatcher.forward(Jsp20RequestDispatcher.java:162)
at oracle.jsp.runtime.OraclePageContext.forward(OraclePageContext.java:175)
at oa_html._OA._jspService(_OA.java:96)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:385)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:259)
at oracle.jsp.JspServlet.internalService(JspServlet.java:178)
at oracle.jsp.JspServlet.service(JspServlet.java:148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at org.apache.jserv.JServConnection.processRequest(JServConnection.java:456)
at org.apache.jserv.JServConnection.run(JServConnection.java:294)
at java.lang.Thread.run(Thread.java:534)
## Detail 0 ##
oracle.apps.fnd.framework.OAException: The application id or shortname () you entered does not exist.
at oracle.apps.fnd.framework.webui.OAWebBeanFactoryImpl.getAppId(OAWebBeanFactoryImpl.java:5391)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:969)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:502)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:423)
at oa_html._OA._jspService(_OA.java:86)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:385)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:259)
at oracle.jsp.JspServlet.internalService(JspServlet.java:178)
at oracle.jsp.JspServlet.service(JspServlet.java:148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at oracle.jsp.provider.Jsp20RequestDispatcher.forward(Jsp20RequestDispatcher.java:162)
at oracle.jsp.runtime.OraclePageContext.forward(OraclePageContext.java:175)
at oa_html._OA._jspService(_OA.java:96)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:385)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:259)
at oracle.jsp.JspServlet.internalService(JspServlet.java:178)
at oracle.jsp.JspServlet.service(JspServlet.java:148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at org.apache.jserv.JServConnection.processRequest(JServConnection.java:456)
at org.apache.jserv.JServConnection.run(JServConnection.java:294)
at java.lang.Thread.run(Thread.java:534)
oracle.apps.fnd.framework.OAException: The application id or shortname () you entered does not exist.
at oracle.apps.fnd.framework.webui.OAWebBeanFactoryImpl.getAppId(OAWebBeanFactoryImpl.java:5391)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:969)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:502)
at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:423)
at oa_html._OA._jspService(_OA.java:86)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:385)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:259)
at oracle.jsp.JspServlet.internalService(JspServlet.java:178)
at oracle.jsp.JspServlet.service(JspServlet.java:148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at oracle.jsp.provider.Jsp20RequestDispatcher.forward(Jsp20RequestDispatcher.java:162)
at oracle.jsp.runtime.OraclePageContext.forward(OraclePageContext.java:175)
at oa_html._OA._jspService(_OA.java:96)
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:385)
at oracle.jsp.JspServlet.doDispatch(JspServlet.java:259)
at oracle.jsp.JspServlet.internalService(JspServlet.java:178)
at oracle.jsp.JspServlet.service(JspServlet.java:148)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at org.apache.jserv.JServConnection.processRequest(JServConnection.java:456)
at org.apache.jserv.JServConnection.run(JServConnection.java:294)
at java.lang.Thread.run(Thread.java:534) -
Tomcat 6 Calling a Java Servlet from a JSP Page
Below is a very simple JSP Page that calls a Java Servlet. The question is given Tomcat security constraints, is it possible to call a servlet from a JSP and get the correct output without getting an error message? If so, how would you code the web.xml file?
c:\apache-tomcat-6.0.18
Under conf
catalina
localhost
HelloWorldExample.xml is directly under localhost
The application would have this directory structure:
webapps
HelloWorldExample
hello.jsp is directly under HelloWorldExample
Under HelloWorldExample
src
WEB-INF
classes
Under classes
jservlets
HelloWorld.java is in src folder
HelloWorld.class is in jservlets folder
HelloWorldExample.xml
<Context path="/HelloWorldExample" docBase="HelloWorldExample" debug="0"
reloadable="true" crossContext="true">
</Context>**************************
hello.jsp
<HTML>
<HEAD>
<TITLE>Hello</TITLE>
</HEAD>
<BODY>
<FONT SIZE="4">
<P>
Please enter your name:
<FORM
METHOD="Post"
ACTION="servlet/jservlets.HelloWorld">
<TABLE BORDER="3" CELLPADDING="1" WIDTH="100%" ALIGN="CENTER">
<TR>
<TD><B>Name:</B></TD>
<TD><INPUT TYPE="text" NAME="Name" VALUE="" SIZE="65"> </TD>
</TR>
</TABLE>
<P>
<INPUT TYPE="SUBMIT" VALUE="Submit">
</FORM>
</FONT>
</BODY>
</HTML>******************
HelloWorld.java
package jservlets;
import java.io.*;
import java.util.Date;
import java.util.*;
import java.text.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet
PrintWriter out;
PrintWriter err;
String strName;
public void displayMessage(HttpServletRequest request, HttpServletResponse response)
throws Exception
try
if (!strName.equals("") && strName != null)
out.println("Hello " + strName + "" + "<P>");
out.println("Hello World" + "<P>");
else
out.println("Hello World" + "<P>");
catch (Exception e)
out.println("Exception: Could not display message." + "<P>");
err.println (e.getMessage () ) ;
out.println("<P>");
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
try
response.setContentType("text/html");
out = response.getWriter();
err = response.getWriter();
strName = request.getParameter("Name").trim();
out.println("<html><head><title>");
out.println("</title></head><body>");
out.println("<FORM");
out.println("METHOD=POST");
out.println("ACTION=http://localhost:8080/HelloWorldExample/hello.jsp>");
out.println("<TABLE ALIGN='RIGHT'>");
out.println("<TR>");
out.println("<TD>");
out.println("<INPUT TYPE=\"SUBMIT\" VALUE=\"Hello World Page\";>");
out.println("</INPUT>");
out.println("</TD>");
out.println("</TR>");
out.println("</TABLE>");
out.println("</FORM>");
out.println("<BR CLEAR='all'>");
out.println("<P>");
displayMessage(request, response);
out.close();
out.println("</body></html>");
catch(Throwable e)
e.printStackTrace();
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
doPost(request, response);
web.xml
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>jservlets.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping> ******************************
HelloWorld.java can be compiled by using javac.
Once compiled, HelloWorld.class would be moved to the jservlets folder.
FYI, coding the above url-pattern results in:
HTTP Status 404
The requested resource (/HelloWorldExample/servlet/jservlets.HelloWorld) is not available
The following url-pattern in the web.xml file permits the servlet to be executed but results in a null pointer exception:
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/ </url-pattern>
</servlet-mapping> **************************************************
RobinThis problem was resolved.
In hello.jsp
ACTION="servlet/jservlets.HelloWorld">
was replaced with
ACTION="servlet/HelloWorld">
Robin -
Problems calling Java Servlets from HTML pages Online
Hello
I have created a Web site using Java Servlets, and have acquired some servlet enabled web-space however i am having some difficulty in calling the actual servlets from the HTML pages i was using the line of code as follows
http://localhost:8080/servlet/....
followed by the name eg.
http://localhost:8080/servlet/Login
however this doesn't seem to be working i have also tried using the exact address of the servlet but this didn't work either
i.e ..servlet/Login.java
I was wondering would anyone have any idea as in how the servlets should be called
Thanks very muchOnce you write the Servlet code, you have to compile and put the classes in the server classpath. To refer these servlets from your pages, you have to configure them in the server configuration(typical a xml file). There you define how you are going to refer to the servlet(/servlet/Logon) and the correponding class.
-Mak -
Call methods (which are in the servlet) in my response page
Hello !
I want to call methods which are in the servlet ( its name is ServletRecap) BUT the call is made in the response page which is generated by the servlet ServletRecap !
I just want to allow the user to update his choice in the response page.
example: i choice A in the initial form but i change my mind and now i want to choice B in the response page : the choice have to be update in the database.
the insertion in the DB is made by a method in the servlet : so i have to recall the method in the response page!
Please, anybody have an idea ?
my servlet :
public class ServletRecap extends HttpServlet {
// param�tres d'instance
private String urlErreurs = null;
private ArrayList erreursInitialisation = new ArrayList<String>();
private String[] param�tres = {"urlFormulaire", "urlReponse", "urlControleur", "lienRetourFormulaire"};
private Map params = new HashMap<String, String>();
// init
@SuppressWarnings("unchecked")
public void init() throws ServletException {
// on r�cup�re les param�tres d'initialisation de la servlet
ServletConfig config = getServletConfig();
// on traite les autres param�tres d'initialisation
String valeur = null;
for (int i = 0; i < param�tres.length; i++) {
// valeur du param�tre
valeur = config.getInitParameter(param�tres);
// param�tre pr�sent ?
if (valeur == null) {
// on note l'erreur
erreursInitialisation.add("Le param�tre [" + param�tres[i] + "] n'a pas �t� initialis�");
} else {
// on m�morise la valeur du param�tre
params.put(param�tres[i], valeur);
// l'url de la vue [erreurs] a un traitement particulier
urlErreurs = config.getInitParameter("urlErreurs");
if (urlErreurs == null) {
throw new ServletException(
"Le param�tre [urlErreurs] n'a pas �t� initialis�");
@SuppressWarnings("unchecked")
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
// on v�rifie comment s'est pass�e l'initialisation de la servlet
if (erreursInitialisation.size() != 0) {
// on passe la main � la page d'erreurs
request.setAttribute("erreurs", erreursInitialisation);
request.setAttribute("lienRetourFormulaire", "");
getServletContext().getRequestDispatcher(urlErreurs).forward(
request, response);
// fin
return;
// on r�cup�re la m�thode d'envoi de la requ�te
String m�thode = request.getMethod().toLowerCase();
// on r�cup�re l'action � ex�cuter
String action = request.getParameter("action");
// action ?
if (action == null) {
action = "init";
// ex�cution action
if (m�thode.equals("get") && action.equals("init")) {
// d�marrage application
doInit(request, response);
return;
if (m�thode.equals("post") && action.equals("validationFormulaire")) {
// validation du formulaire de saisie
doValidationFormulaire(request, response);
return;
if (m�thode.equals("post") && action.equals("enregistrementFormulaire")) {
// enregistrement du formulaire de saisie
doEnregistrementFormulaire(request, response);
return;
if (m�thode.equals("post") && action.equals("retourFormulaire")) {
// retour au formulaire de saisie
doRetourFormulaire(request, response);
return;
// autres cas
doInit(request, response);
// validation du formulaire
void doValidationFormulaire(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// on r�cup�re les param�tres
String nomCentre = (String) request.getParameter("nomCentre");
String idCentre = (String) request.getParameter("idCentre");
String nomPreleveur = (String) request.getParameter("nomPreleveur");
String datePrelev = (String) request.getParameter("datePrelev");
String numFinFiche = (String) request.getParameter("numFinFiche");
// qu'on m�morise dans la session
HttpSession session = request.getSession(true);
session.setAttribute("nomCentre", nomCentre);
session.setAttribute("idCentre", idCentre);
session.setAttribute("nomPreleveur", nomPreleveur);
session.setAttribute("datePrelev", datePrelev);
session.setAttribute("numFinFiche", numFinFiche);
// v�rification des param�tres
ArrayList<String> erreursAppel = new ArrayList<String>();
// le nom doit �tre non vide
nomCentre = nomCentre.trim();
idCentre = idCentre.trim();
nomPreleveur = nomPreleveur.trim();
datePrelev = datePrelev.trim();
numFinFiche = numFinFiche.trim();
if (nomCentre.equals("")) {
erreursAppel.add("Le champ [nomCentre] n'a pas �t� rempli");
if (idCentre.equals("")) {
erreursAppel.add("Le champ [idCentre] n'a pas �t� rempli");
if (nomPreleveur.equals("")) {
erreursAppel.add("Le champ [nomPreleveur] n'a pas �t� rempli");
if (datePrelev.equals("")) {
erreursAppel.add("Le champ [datePrelev] n'a pas �t� rempli");
if (!numFinFiche.matches("^\\s*\\d+\\s*$")) {
erreursAppel.add("Le champ [numFinFiche] est erron�");
// des erreurs dans les param�tres ?
if (erreursAppel.size() != 0) {
// on envoie la page d'erreurs
request.setAttribute("erreurs", erreursAppel);
request.setAttribute("lienRetourFormulaire", (String) params.get("lienRetourFormulaire"));
getServletContext().getRequestDispatcher(urlErreurs).forward(
request, response);
return;
// les param�tres sont corrects - on envoie la page r�ponse
request.setAttribute("nomCentre",nomCentre);
request.setAttribute("idCentre",idCentre);
request.setAttribute("nomPreleveur",nomPreleveur);
request.setAttribute("datePrelev",datePrelev);
request.setAttribute("numFinFiche",numFinFiche);
request.setAttribute("lienRetourFormulaire", (String) params.get("lienRetourFormulaire"));
getServletContext().getRequestDispatcher((String) params.get("urlReponse")).forward(request,
response);
return;
//enregistre dans la base de donn�e les variables
void doEnregistrementFormulaire(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String nomCentre = (String) request.getParameter("nomCentre");
String idCentre = (String) request.getParameter("idCentre");
String nomPreleveur = (String) request.getParameter("nomPreleveur");
String datePrelev = (String) request.getParameter("datePrelev");
String numFinFiche = (String) request.getParameter("numFinFiche");
String nEtude = datePrelev + "." + idCentre + "." + numFinFiche;
// qu'on m�morise dans la session
HttpSession session = request.getSession(true);
session.setAttribute("nomCentre", nomCentre);
session.setAttribute("idCentre", idCentre);
session.setAttribute("nomPreleveur", nomPreleveur);
session.setAttribute("datePrelev", datePrelev);
session.setAttribute("numFinFiche", numFinFiche);
Connexion com = new Connexion();
try{
//serveur,login,pwd,database
com.loadDriverAndConnect("127.0.0.1","3306","root","root","");
com.execute("USE BIOTECH");
com.execute("INSERT INTO RECAP (NEtude,NomCentre,idCentre,nomPreleveur,datePrelev) " +
"values ('"+nEtude+"','"+nomCentre+"','"+idCentre+"','"+nomPreleveur+"','"+ datePrelev + "')") ;
com.close();
catch(Exception ex) {
System.err.println("\n*** SQLException caught in main()");
request.setAttribute("urlAction", (String) params.get("urlControleur"));
getServletContext().getRequestDispatcher((String) params.get("urlReponse")).forward(request,
response);
return;
// affichage formulaire pr�-rempli
void doRetourFormulaire(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// on r�cup�re la session de l'utilisateur
HttpSession session = request.getSession(true);
// on pr�pare le mod�le du formulaire
// nom pr�sent dans la session ?
String nomCentre = (String) session.getAttribute("nomCentre");
if (nomCentre == null) {
session.setAttribute("nomCentre", "");
String idCentre = (String) session.getAttribute("idCentre");
if (idCentre == null) {
session.setAttribute("idCentre", "");
String nomPreleveur = (String) session.getAttribute("nomPreleveur");
if (nomPreleveur == null) {
session.setAttribute("nomPreleveur", "");
String datePrelev = (String) session.getAttribute("datePrelev");
if (datePrelev == null) {
session.setAttribute("datePrelev", "");
String numFinFiche = (String) session.getAttribute("numFinFiche");
if (numFinFiche == null) {
session.setAttribute("numFinFiche", "");
// urlAction
request.setAttribute("urlAction", (String) params.get("urlControleur"));
// on affiche le formulaire
getServletContext().getRequestDispatcher((String) params.get("urlFormulaire")).forward(
request, response);
return;
// post
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
// on passe la main au GET
doGet(request, response);
my initial form:%
// on r�cup�re les param�tres dans la session
String nomCentre=(String)session.getAttribute("nomCentre");
String idCentre= (String)session.getAttribute("idCentre");
String nomPreleveur = (String)session.getAttribute("nomPreleveur");
String datePrelev=(String)session.getAttribute("datePrelev");
String numFinFiche=(String)session.getAttribute("numFinFiche");
String urlAction=(String)request.getAttribute("urlAction");
%>
<html>
<head>
<title>Fiche répitulative - formulaire</title>
</head>
<body>
<center>
<img src="logoBiotech.jpg" align="left" alt="logo Biotech-Germande" width="5%"></img>
<h2>Fiche répitulative - formulaire</h2>
<br>
<hr>
<form action="<%= urlAction %>" method="post">
[... page setting: made by html language ...]
<td><input type="submit" name="action" value="validationFormulaire"></td>
<td><input type="reset" value="Rétablir"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
my response page:<%
// on r�cup�re les donn�es
String nomCentre=(String)session.getAttribute("nomCentre");
String idCentre= (String)session.getAttribute("idCentre");
String nomPreleveur = (String)session.getAttribute("nomPreleveur");
String datePrelev=(String)session.getAttribute("datePrelev");
String numFinFiche=(String)session.getAttribute("numFinFiche");
String urlAction=(String)request.getAttribute("urlAction");
%>
<html>
<head>
<title>Fiche répitulative - formulaire</title>
</head>
<body>
<form action="<%= urlAction %>" method="post">
[... page setting: made by html language ...]
<br><br>
<td><input type="submit" name="action" value="enregistrementFormulaire"></td>
<td><input type="submit" name="action" value="retourFormulaire"></td>
</body>
</html>
my web.xml:<!-- Servlets -->
<!--Servlet Fiche Recapitulative-->
<servlet>
<servlet-name>FicheRecap</servlet-name>
<servlet-class>germande.ServletRecap</servlet-class>
<init-param>
<param-name>urlReponse</param-name>
<param-value>/WEB-INF/JSP/Recap/reponseRecap.biotech.jsp</param-value>
</init-param>
<init-param>
<param-name>urlErreurs</param-name>
<param-value>/erreursRecap.biotech.jsp</param-value>
</init-param>
<init-param>
<param-name>urlFormulaire</param-name>
<param-value>/WEB-INF/JSP/Recap/formulaireRecap.biotech.jsp</param-value>
</init-param>
<init-param>
<param-name>urlControleur</param-name>
<param-value>ServletRecap</param-value>
</init-param>
<init-param>
<param-name>lienRetourFormulaire</param-name>
<param-value>Retour au formulaire</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>FicheRecap</servlet-name>
<url-pattern>/ServletRecap</url-pattern>
</servlet-mapping>
</web-apps>
Thanks in advance for your idea.
I resume : how can I call a method in my servlet into my response page (in jsp).
the servlet generate this response page and i just want to update the choice of my user.
Thanks !!I resume : how can I call a method in my servlet into my response page (in jsp).Don't do that. Put the message into a plain old Java class which can be called from both the servlet and the JSP.
-
What is the best way to call a servlet from another servlet?
I have a project with 9 servlets (class project). The way I have been moving from servlet to servlet is like this
doPost(...)
{ response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title>Functions</title>");
out.println(f"<form name=frm6 method=post action=/servlet2");
out.println("<input type=submit name='btn' value='servlet2'>");
out.println("</form>");
So I have these 9 servlets - I call any 8 of them from the first servlet so I have 8 buttons on 8 forms <form=frm1, frm2, ...frm8 method = post...> But when I bring up the first servlet only 6 buttons show up. I was thinking about using hyperlinks instead, but I would like to do this with buttons. I wanted to do this with javascript and the location object, but I was advised to use jsp. I just want to move from one servlet to the next. Any suggestions appreciated for the best/preferred method for moving from one servlet to the next.
ThanksI think you may need some clarification of terminology etc..
First off, JSP isn't an alternative to javascript, it's an alternative to coding a servlet. A JSP is a mixture of java code and HTML and is translated into a servlet by the system. JSPs are primarilly for generating HTML pages with variable content. JSPs very frequently generate HTML which includes Javascript.
You probably shouldn't think of what you're doing as one servlet invoking another, that does happen; a servlet can transfer an transaction to another servlet or JSP. In fact it's standard practice that a servlet does the logical stuff (like interpretting form data) then transfers to a JSP to generate the response page. However in this case it's the browser that can invoke one of the 8 servlets, the first servlet merely creates the page from which they are invoked.
It's not obvious why only some of your buttons are showing up. In a case like this use the "view source" option on your browser to find out what HTML the servlet is actually delivering. What's wrong should be evident from that.
You can put a hyperlink arround a button, or an image. Mostly people turn up their noses at the buttons supplied by HTML and use their own images for buttons. You
can do somthing like this:
<img src="/images/button3.png" border="0">
(Of course this arrives as a GET transaction not a POST).
Or you can do a bit of javascript like:
<img src="/images/button3.png" style="Cursor: pointer;"
onclick="document.locations.href='/servlet3';"> -
How to Access the Remote Servlet through a JSP Page
Hi ,
I wrote a servlet in my local system and It is running very well in my tomcat server5.5. Now I write a JSP code an another one system. Now I don't know how to call my servlet when Click a submit button. I need a small example or idea about this. Help me
Thanks in advance,
Maheshwaran DevarajJust like any other servlet or form-processing script. What would a mere HTML page know about "systems"? Put the URL into the form destination attribute and be done.
-
Hi guys,
How do I Display a string from a servlet into a JSP Page...
Ive tried so many bloody things!.....
Simply.
I get text from JSP. The servlet does what ever it does to the string.
Now. Ive create sessions and bean things,.... how the hell do I display it in a text box... I can display on the screen.. but not in the text box.!!!
please help!!!hmmm, I dont really like using JSP programming, u should be using JAVA..
the way to do it is:
Call and cast to the bean like this:
<%@ page import="beans.*" %>
<% //cast to bean get request create object
userNameBean u= (userNameBean) request.getSession().getAttribute("userNameBean");
then... all you do is call it like this:
<input type="text" name="firstName" value="<%= u != null? u.getFirstName(): "" %>">
this is the real programmers way,,,
chet.~ -
Problem in calling jsp/servlets ...Last Day
when ever I call jsp page from browser, It always search the jsp page in the parent directory of the documentroot directory.
Also I am not able to set the configuration for calling the servlet from my customize laocation. is any other entry needed except specifying the repositry path in zone.properties file.
Please help...........I have not very time left for evaluation of 9ias 1.0.2.0.0
If any one encountered this type of problem. pls respond immediately
I have installed 9ias v10200 enterprise edition with oracle 8.1.6(enterprise edition) as origin database on winnt server 4.0 with service pack 5. At the time of installation I have selected oracle web cache , forms & reports to be configured at the time of installation.
I am using port say 10000 other than default port 80, but on same IP.
I have entered the folling entries at the end of httpd.conf file.
<VirtualHost 192.168.1.120:10000>
ServerName rnd1
DocumentRoot e:/test
DirectoryIndex hi.html
</VirtualHost>
Listen 80
Listen 10000
now when I request "http://rnd1:10000/ClamHome.jsp" from browser, It gives the messege that source file "ClamHome.jsp" not found on path "e:\" which is the parent of my documentroot path. Why it try to search at parent directory of document root????????
another thing is that, when I run the demos of jsp given with 9ias v10200, they works(jsps) fine.
but after running the demo which is on port 80 with documentroot e:\9\Apache\Apache\htdocs,
I again call my ClamHome.jsp at rnd1:10000 then it gives error that file not found at "e:\9\Apache\Apache\htdocs". Strange behaviour, this time it searches on path which I called earlier.
pls help
nullI would try to change "./Welcome.jsp" to "/Welcome.jsp". I'm not sure what that period will do.
Are you able to access that JSP directly from your browser (even if it's not designed to be accessed that way)? If not, then you have some other problem.
When you say you get a 404 when you access the servlet, is that when you access the servlet, or when it tries to forward to the JSP? If you get the 404 when you access the servlet, perhaps your servlet-mapping to the servlet is invalid. -
Servlets: Scrolling a html page
I have a servlet that generates a page with edit buttons,
rows, columns etc. When the edit button is pressed it
allows the current row to be edited (hence the name edit button ;). The problem is, when I press a button way down on the bottom of the page (scrollable) it works as it should (opens a html textfield(?) on the row) but the drawback is, that the page is hiked up and you have to scroll down and find the edit row. So is there a way I can scroll it down automatically near the edit row?
Thank youHave I understod correctly?
When you press the button the servlet generates a new page with the textfield.
You call the servlet something like this in the button: www.site.com/servlet/theServlet.
Then call it as www.site.com/servlet/theServlet#here and insert <a name="here"> before the textfield in the generated page (in the servlet code). -
AJAX calling a servlet's synchronized doPost method
Hi all. This problem has been bugging me for a week already and still no solution in sight...
Anyway, buttons in a page I'm creating uses AJAX to call a servlet's synchronized doPost method. Once a button is clicked, the servlet calls another java class which does some back end processing. Once the called java program is finished running, the page is updated telling the user that the selected backend process has finished running. It works fine if I just run one backend process at a time...however, if try to run another backend process while the previous backend process is still running, even if the backend process is finished, the page doesn't get updated with the message informing the user that the job is finished. The page only gets updated once all the jobs have finished running. What I want to happen is that whenever a job gets finished, the page gets updated.Yeah, it has
something to do with the threads. However, I had to
synchronize the doPost method because if the doPost
method isn't synchronized, running 2 or more back end
processes simultaneously would result in the previous
backend processes being terminated, only the last
back end process would be run successfully.Yea! that's what I wanted to say! most of the time there are critical sections in your code when concurrency is there, you need to recognize them and synchronize only the critical sections.
I don't think synchronizing the whole dopost method is a better way to deal with concurrency issues. It defeats the purpose of spawning a new thread for each request(it's my personal opinion, I may be wrong).
But I got one contradiction from one member of sun forum, he says spawning thread from a servlet is not a good practice according to java EE specification. But I don't think there is any way out other than this, to deal with this scenario. I am waiting for further suggestions, so keep an eye on this thread:
http://forum.java.sun.com/thread.jspa?threadID=5149048
~cheers~ -
I need to know which HTML link was selected to call a servlet
I can't find the answer to this anywhere...
I have a web page with a number of links which all call the same servlet. I want the servlet to perform different functionality according to the link that was selected to call it.
So how do I uncover which link called the servlet?
CheersOK... I'm really stupid. I know how to do this now...
Cheers.
Maybe you are looking for
-
Transfer Vendor Open items to a new company
Hi, My client is creating a new company code (Company B) from April and they want the vendor open items as on 31st March in the existing company (Company A) to be transferred to the new company B on 1st April i.e on 1st April the balance in company
-
Hoping someone can help me out here: 1. What is the vertical blue-shaded bar below one of the clips on the timeline, in the image below? I have not made any changes to position, opacity, style etc. 2. Sometimes I can see little blue specks in a horiz
-
Recently my mail program has changed itself and I can no longer see the red, yellow and green dots allowing me to close minimize and enlarge. To get out of mail I have to put the cursor on the top edge of the toolbar expanding to another toolbar tha
-
When are the prices for the new Macbook Pro with Retina Display going DOWN!?
i want to buy it but it but its almost unafordable for me!!! please lower ir down for GODS SAKE!!!
-
How do I turn off the very annoying battery warning message? how do I disable battery warning message? Both these are very annoying and ever remind me of windows which I hate