Calling a servlet from af:button
Hi
I am invoking a servlet using af:commandbutton. I am trying that this servlet be invoked by authenticated user. For this, I injected ADFContext.getCurrent.getSecurityContext().isAuthenticated(); in servlet.
Based, on the *...isAuthenticated()* method value , doGet() should execute code.
But this warning is coming -
<ADFContext> <getCurrent> Automatically initializing a DefaultContext for getCurrent.
Caller should ensure that a DefaultContext is proper for this use.
Memory leaks and/or unexpected behaviour may occur if the automatic initialization is performed improperly.
This message may be avoided by performing initADFContext before using getCurrent(). Is this right to use ADFContext in servlet? Should I ignore warning?
I cannot use 'isAuthenticated()' as a parameter from commandbutton's managed bean. Since user can see the servlet parameter url in browser & without authentication , they can call the servlet.
What is the way to avoid this type of situation?
Using Jdev 11.1.1.5 with ADF RC with WLS 10.3.5.
You can ignore this warning
Similar Messages
-
Help needed to call a servlet from an applet
Hi,
can someone help me with the way to call a servlet from an applet.
actually on click of a button i wanna call my servlet and save some data in DB.
i am not able to call my servlet. see the sample code which i am trying..
public void actionPerformed(ActionEvent event) {
if (event.getActionCommand().equals("Upload")) {
try {
System.out.println("Upload button has been clicked -----------");
URL url = new URL("http://localhost:8084/uploadApp/TestServlet");
URLConnection urlConnection = url.openConnection();
urlConnection.setDoInput(true);
urlConnection.setDoOutput(true);
urlConnection.setUseCaches(false);
ObjectOutputStream objOut = new ObjectOutputStream (urlConnection.getOutputStream());
objOut.writeBytes(userId); // pass parameter to servlet
objOut.flush();
objOut.close();
} catch (MalformedURLException ex) {
Logger.getLogger(ButtonListener.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(ButtonListener.class.getName()).log(Level.SEVERE, null, ex);
is there any problem with the code? please suggest.hii,
checkout my add from, HTH
[http://forums.sun.com/thread.jspa?threadID=5419921&messageID=10885709#10885709]
... kopik -
Calling a Servlet from a JSP within Portal Portlet
We've created a JSP that calls a Servlet when the form is submitted. The servlet handles the request, does some basic processing and then forwards back to a JSP. This works fine outside of Portal.
What needs to be done in order for this to work within a portlet in Portal? We can get to the first JSP which is in a portlet, but as soon as we click the submit button (which tries to call the servlet) we get the basic page not found error. We need to click the button, go to the servlet and have the servlet forward back to our portlet.
I know this is not the ideal way of using Portal however...
Any ideas?
Thanks!
-Teri Kemple
[email protected]I was wondering is there any way I can call a servlet from jsp? There are two scenarios here
1 - if the jsp is currently being executed/evaluated on the server, then you can use <jsp:include> to "call" a servlet, or <jsp:forward> to cancel the jsp and transfer the control to the servlet.
2 - if the page is already loaded and running in the client, then the only way to call a servlet is making a HTTP request as from any other html page. Jave code does not execute on the client, so you have to use html/javascript at that point.
Calling a servlet within another servlet.
lets say one servlet maintains all dynamic html. I call this servlet from another servlet to create a dynamic page and then insert values into it.Close, but the standard pattern is the reverse of that. What normally happens is you retrieve the values to put in the page, and then call the page, passing in those values. Thats why often you get a servlet/actionbean getting called, which then forwards to a JSP to display the result. The servlet/bean loads all the values required into scope, and then the JSP presents the data. -
How to call a servlet from another servlet
hi everybody,
i have a problem, i have to call one servlet from another one.
Everything works on my pc, but when i install the application on the customer's server i got an error about an Uknown URL followed by the name of the machine.
Wjat i do is the folloqing :
String urlString = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+"/"+servletName;
URL url = new URL(urlString);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
the variable servletName is the name of the servlet i have to call.
Is there another way to call the servlet ?
All the servlet are installed in the same server.
Any suggestion ?
Cheers.
StefanoSweep is correct about requestDispatcher being another approach for inter-servlet delegation; the only issue that i recall with this approach is that it defaults the method of the destination servlet to the one it was called from...for example, calling servlet2 from within servlet1.post() resulted in the dispatcher attempting to utilize servlet2.post() - i believe that i searched for a parameterize solution to no avail :( (ended up handling the request by placing a "fake" doPost() in servlet2 that simply called servlet2.doGet())
however, if your application is functioning correctly on your pc/webserver then the problem may be external to servlet communication (e.g. client webserver's ports not configured or blocked, missing runtime classes, etc.)
my suggestion would be to set aside the programmatic concerns for the moment - what is the response if you open a browser on a client's machine and access the URL in question (i.e. http://clientserver:port/stefanoServlet)? If it will not respond to access in this manner then it certainly won't when your application calls for it.
It's possible that there is a coding error but, given the info supplied, i'd start examining the environment, first. Let us know if you have any luck with the test i recommended or not (please provide abundant detail). Or, if you've found the solution then you may want to post back with a quick blub so the next person knows how to escape the trap.
D -
How can i call a servlet from a servlet ?
Hello,
Can i call a Servlet from within a Servlet ?
and is it "right thing" to Do ?
ThanksJMO, but I wouldn't do it like this.
Don't have a remote object like a servlet doing database queries for your app. That will mean TWO network hops for every query if the database resides on another machine. The network is the biggest bottleneck you've got.
Write a JavaBean that does the database stuff for you and just have the first servlet instantiate it when it needs it. A Bean has a better chance of being reused, too. Write a TableGateway or DAO for your object.
Or write an EJB to do it.
The only time I've done a servlet-to-servlet connection like that was for one servlet running in a DMZ that would authenticate a user and then forward the request to another servlet running inside the second firewall.
I wouldn't encapsulate database query logic in a servlet like that. JMO - MOD -
Calling a Procedure from a Button? (REVISITED)
Hi All,
I once asked a question Re: Calling a Procedure from a Button? & that problem was resolved when i was working on the online ApEx.
On my application, requirements have changed a bit: I have one form based on two tables. One table contributes two fields (name & surname) to the form while the remaining fields are contributed by another table to make a total of 17 fields on the form.
My process is in such a way that a user enters an id number & clicks Search button, if the apllicant exists then both name & surname corresponding with the id number will be retrieved from the database. If the applicant does not exist then an error message will be displayed inline with the id number field. Here's the PL/SQL anonymous block to that:
DECLARE
vNAME APPLICANTS.name%TYPE;
vSURNAME APPLICANTS.surname%TYPE;
BEGIN
SELECT count(*)
INTO :P2_COUNT
FROM applicants
WHERE id_number = :P2_ID_NUMBER;
IF :P2_COUNT > 0 THEN
SELECT name,surname
INTO vNAME, vSURNAME
FROM applicants
WHERE id_number = :P2_ID_NUMBER;
:P2_NAME := vNAME;
:P2_SURNAME := vSURNAME;
ELSE
apex_application.g_print_success_message := '<span style="color:red">Applicant does not exist.</span>';
END IF;
EXCEPTION WHEN NO_DATA_FOUND THEN
apex_application.g_print_success_message := '<span style="color:red">Exception Caught.</span>';
END;The PL/SQL block works except for error displaying part (but that's a problem for another day).
NB: On my application, there’s already Automated Row Fetch & Automatic Row Processing (DML) processes for one table. Furthermore, there is also a javascript for verifying the validity of an id number. As a result, I decided to include Automated Row Fetch & Automatic Row Processing (DML) processes for the other table. When I click a Search button the javascript is activated even though I did not specify a URL target for the button - because this is a simple button among region items – it does not have Optional Url Redirect section.
I'm not sure what I'm doing wrong here - any help is appreciated.
Regards
KamoHi Dan,
Sorry for causing confusion with my post - it's just that I was asking the same question (with different constraints) as I had asked before so I didn't feel like going to details was necessary because in my post I included a link to the previous thread. Interestingly, I was working on apex.oracle.com when I posted the original thread - the only problem came to be when I started to move the solution to my application on my machine.
Anyway, thanks for the response!
Regards
Kamo -
Calling a servlet from a servlet?
Is it possible to call one servlet from another servlet?
You should use servlets to process requests. If what you're asking for is to execute a piece of logic within a servlet before its finished processing the request, then you should consider using a regular java class instead of a servlet. If you just want to send the request information to another servlet you can use getRequestDipatcher().forward(..) method. Keep in mind that by doing so you'll interupt the current servlet.
Regards,
D. -
Calling a servlet from another servlet?
Hi
I would like to know that how can I call one Servlet from another Servlet. I have tried getServlet() method of ServletContext but it has been deprecated. I want to call a specific method of the other Servlet, is there any other way?
ThanksI should have seen it from your previous post :(
Code of Servlet 1:
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws
ServletException, IOException
RequestDispatcher rDispatch = null ;
rDispatch = getServletConfig
().getServletContext().getRequestDispatcher
("/Servlet2") ;
rDispatch.forward(request, response) ;
System.out.println("Back in 1");
I assume Servlets 1and 2 are in same web app and you've mapped your servlet2 to /Servlet2 in your web.xml
make it as
rDispatch = request.getRequestDispatcher("/Servlet2");
rDispatch.forward(request,response);
Nothin's wrong with yer servlet2 -
Has anyone successfully called a servlet from xsql? If you have, have you called one from the href in the xsl:stylesheet?
nullCan you post a sample of what you're trying to do? Not sure what you mean by having the XSQL "call a servlet"? Call a servlet when? to serve/use what?
Are you trying to using a servlet to return a dynamically-constructed stylesheet in the role of:
<?xml-stylesheet type="text/xsl" href="http://foo/servlets/myservlet"?>
If not, can you expound on what you're trying to achieve/accomplish?
Thanks. -
How to call a servlet from java?
your help is greatly appreciated..Welcome to the forum
You seem to be misunderstanding something. Do some googling to learn what you need about servlets. Simplified, servlets are java code that's hosted by a web container, such as Tomcat. When a servlet gets called as a consequence of someone requesting a url from the container, it takes in a request object and a response object. All the magic is then in creating an appropriate response (e.g. html) for the incoming request. -
Call a servlet from Faces Portlet in Websphere
Hi All,
I have created a JSR-168 Faces Portlet project and using RAD(IDE) and WebSphere Portal server.
I want to call a servlet from my jsf portlet.But i do not know where to place my servlet in the project directory.And how to invoke a call to my servlet from my portlet.
Please help me find an answer.
Best Regards,
Pallavihi Pallavi,
Yes you can do that, what you have to do is you can get the ExternalFacesContext and forward your request to the servlet, you have entry for your servlet in web.xml...
I am sure about it but you can try this
Hope it will work.
Surya -
Calling a servlet from a Java Stored Procedure
Hey,
I'm trying to call a servlet from a Java Stored Procedure and I get an error.
When I try to call the JSP-class from a main-method, everything works perfectly.
Java Stored Procedure:
public static void callServlet() {
try {
String servletURL = "http://127.0.0.1:7001/servletname";
URL url = new URL(servletURL);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setDoOutput(true);
conn.setRequestProperty("Pragma", "no-cache");
conn.connect();
ObjectInputStream ois = new ObjectInputStream(conn.getInputStream());
Integer client = (Integer)ois.readObject();
ois.close();
System.out.println(client);
conn.disconnect();
} catch (Exception e) {
e.printStackTrace();
Servlet:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Integer id = new Integer(10);
OutputStream os = response.getOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(os);
oos.writeObject(id);
oos.flush();
oos.close();
response.setStatus(0);
Grant:
call dbms_java.grant_permission( 'JAVA_USER', 'SYS:java.net.SocketPermission','localhost', 'resolve');
call dbms_java.grant_permission( 'JAVA_USER','SYS:java.net.SocketPermission', '127.0.0.1:7001', 'connect,resolve');
Package:
CREATE OR REPLACE PACKAGE pck_jsp AS
PROCEDURE callServlet();
END pck_jsp;
CREATE OR REPLACE PACKAGE BODY pck_jsp AS
PROCEDURE callServlet()
AS LANGUAGE JAVA
NAME 'JSP.callServlet()';
END pck_jsp;
Architecture:
AS: BEA WebLogic 8.1.2
DB: Oracle 9i DB 2.0.4
Exception:
java.io.StreamCorruptedException: InputStream does not contain a serialized object
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java)
The Servlet and the class work together perfectly, only when I make the call from
within the database things go wrong.
Can anybody help me.
Thank in advance,
Bart Laeremans
... Desperately seeking knowledge ...Look at HttpCallout.java in the following code sample
http://www.oracle.com/technology/sample_code/tech/java/jsp/samples/jwcache/Readme.html
Kuassi -
Calling a Procedure from a Button?
Hi All,
I'm using Oracle Application Express 11g & I'm currently working on an application. One of the requirements for this particular application is that a user has to be able to enter an applicant's id number (in the id textfield) & if a user clicks a button then they should be able to check in the db whether the applicant exists or not. If the applicant exists then name & surname textfields should be populated with values from the database corresponding to the id number & all these three textfields should be read only. If the applicant doesn't exist then the user will be directed to a page where he/she will fill in new applicant's details.
So, I wrote the following procedure to do that:
CREATE OR REPLACE PROCEDURE search_applicant(
P17_APPLICANT_IDNUMBER IN FIR_APPLICANT.applicant_idnumber%TYPE,
P17_NAME OUT FIR_APPLICANT.name%TYPE,
P17_SURNAME OUT FIR_APPLICANT.surname%TYPE,
P17_COUNT IN FIR_CURRENCY.currency_id%TYPE) IS
BEGIN
SELECT count(*)
INTO P17_COUNT
FROM fir_applicant
WHERE applicant_idnumber = :P17_APPLICANT_IDNUMBER;
IF P17_COUNT > 0 THEN
SELECT name,surname
INTO P17_NAME, P17_SURNAME
FROM fir_applicant
WHERE applicant_idnumber = :P17_APPLICANT_IDNUMBER;
dbms_output.put_line('Name: ' || P17_NAME || ' & Surname: ' || P17_SURNAME);
ELSE
dbms_output.put_line('Applicant does not exit.');
END IF;
EXCEPTION WHEN NO_DATA_FOUND THEN
dbms_output.put_line('Applicant does not exit.');
END;
So far I have not been able to find any help in this regard. I know how to invoke a javascript from a button but I'm not sure how to go about this one.
Any help in this regard is highly appreciated.
THANK YOU
KamoThanx PaulD & Chris,
Sorry for the delay in response - I couldn't implement the solutions you recommended for me. My ApEx instance is down (& has been for the past week). It finally dawned on me that I could recreate my problem @ apex.oracle.com. Please take a look at the following application & see if you can help:
http://apex.oracle.com/pls/otn/f?p=45267:2:714925804498386:::::
Username: Kamo
Password: admin
PS: I have tried to call a Procedure from a button using a page process but it still couldn't work.
THANK YOU!
Kamo
Edited by: user5429001 on 2009/01/28 6:10 AM
Edited by: user5429001 on 2009/01/28 6:21 AM -
Question? calling a servlet from EJB.
Can anyone tell me how I would go about calling a servlet
from a session bean thatâs running in the same J2EE application.
Application server is Oracle10g.
Thanks.Welcome to the forum
You seem to be misunderstanding something. Do some googling to learn what you need about servlets. Simplified, servlets are java code that's hosted by a web container, such as Tomcat. When a servlet gets called as a consequence of someone requesting a url from the container, it takes in a request object and a response object. All the magic is then in creating an appropriate response (e.g. html) for the incoming request. -
Calling ASP script from APEX button passing Bind variable
I am looking for some examples or best form for calling asp script from apex button that will pass apex bind variable to asp script to process.
Thanks,s
BobI am surprised by the degree of no replies. I have solved this by using asp redirects such as:
Response.Redirect("test.aspx?UserName="&user)
My formulated solution contains a page with a manually built interactive report. I have a number of bind variables at the top of the reoprt where users can query the information they want based on desginated database columns for this particular report. Once they have the "manual" interactive report displaying what they want, they click a button where a asp script is called with parameters passed that calls a Java based Crystal Reports plugin with the called correspnding report displayed with passed parameters.
Works like a charm!
This solves our reporting needs without having to resort to Bi Publisher (much too expensive) and other third party applications that kinda indicate it can work with apex but provide limited help or best form for doing so.
Bob
Maybe you are looking for
-
How can delete an alien folder content?
I wan to delete the content of my allias folder. My mac prevents me to do this. I went to all files folder. Still I can deleted some of my files. Ithe message I got is "some files are locked"
-
Can't install flash 11 on MacBook Pro (fails at 55% progress
HI I'm trying to update flash to v.11 on Macbook but the install fails after about 55%. I've uninstalled the old version and tried various workarounds as noted on this forum but nothing seems o work. Anyone having similar problems?
-
HT1338 how you download counter strikes go in macbook pro??
how you downloa counter strike go in macbook pro??
-
Failure when loading to Master data object
I get a failure when I try and carry out a load. The message is There are duplicates of the data record 1529 & with the key '00000001220550101 &' for characteristic 0MATERIAL &. I can change the id number and I think it should work, but why woul
-
Image Class 7470 printer won't power up
My Image Class 7470mf printer will not power up. Is there a power reset or is there a serice manual available (online preferred) where I can troubleshoot this problem?