Help needed in HTTP to JDBC synchronous
Hi,
I am doing a interface which involves the HTTP and Database (JDBC), i need to send some two fields as request and based on the certain condition of these two fields i need to get some 4 fields as response.
Can any one please help me out in this regard so that i can atleast frame an idea and start doing the interface?
Thanks,
PSV.
Hi PSV,
BPM Not Required.., just go through the blog and see how you can use JDBC Receiver adapter for Synchronous select...
Information provided in the blog is sufficient to solve your problem.
Regards,
Similar Messages
-
Help needed in HTTP Tunneling - urgent
Hi all,
I urgently need a working code sample of a client which sends requests to a server that redirects the request to an RMI server via RMI servlet.
Does any of you familiar of such a code sample?
ThanksI'm sorry, but HTTP Tunneling is not working for me. I must have done something wrong.
Let me describe my configuration:
I have a server behind NAT router which connected to apache2 and tomcat 4.1 web servers. The apache2 and tomcat are not connected between them.
I deployed war file on tomcat which contains the servlet for the HTTP Tunneling which its code is:
public class RmiHttpTunnelerServlet extends HttpServlet
public void init(ServletConfig config) throws ServletException
super.init(config);
System.out.println("Simplified RMI Servlet Handler loaded successfully.");
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
try
String queryString = req.getQueryString();
String command, param;
int delim = queryString.indexOf("=");
if (delim == -1)
command = queryString;
param = "";
else
command = queryString.substring(0, delim);
param = queryString.substring(delim + 1);
if (command.equalsIgnoreCase("forward"))
try
ServletForwardCommand.execute(req, res, param);
catch (ServletClientException e)
returnClientError(res, "client error : " + e.getMessage( ));
e.printStackTrace();
catch (ServletServerException e)
returnServerError(res, "internal server error : " + e.getMessage());
e.printStackTrace();
else
returnClientError(res, "invalid command: " + command);
catch (Exception e)
returnServerError(res, "internal error: " + e.getMessage());
e.printStackTrace();
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
returnClientError(res, "GET Operation not supported: Can only forward POST requests.");
public void doPut(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
returnClientError(res, "PUT Operation not supported: Can only forward POST requests.");
public String getServletInfo()
return "Simplified RMI Call Forwarding Servlet Servlet.<br>\n ";
private static void returnClientError(HttpServletResponse res, String message) throws IOException
res.sendError(HttpServletResponse.SC_BAD_REQUEST,
"<HTML><HEAD><TITLE>Java RMI Client Error < / TITLE > < / HEAD > < BODY > " +
"<H1>Java RMI Client Error</H1>" + message + "</BODY></HTML>");
System.err.println(HttpServletResponse.SC_BAD_REQUEST + "Java RMI Client Error" + message);
private static void returnServerError(HttpServletResponse res,
String message) throws IOException
res.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
"<HTML><HEAD>< TITLE > Java RMI Server Error < / TITLE > < / HEAD > < BODY > " +
"<H1>Java RMI Server Error < / H1 > " + message + " < / BODY > < / HTML > ");
System.err.println(HttpServletResponse.SC_INTERNAL_SERVER_ERROR + "Java RMI Server Error : " + message);
}There is also a utility class:
public class ServletForwardCommand {
public static void execute(HttpServletRequest request, HttpServletResponse response, String stringifiedPort)
throws ServletClientException, ServletServerException, IOException {
int port = convertStringToPort(stringifiedPort);
Socket connectionToLocalServer = null;
try {
connectionToLocalServer = connectToLocalServer(port);
forwardRequest(request, connectionToLocalServer);
forwardResponse(response, connectionToLocalServer);
} finally {
if (null != connectionToLocalServer) {
connectionToLocalServer.close();
private static int convertStringToPort(String stringfiedPort) throws ServletClientException {
int returnValue;
try {
returnValue = Integer.parseInt(stringfiedPort);
} catch (NumberFormatException e) {
throw new ServletClientException("invalid port number: " + stringfiedPort);
if (returnValue <= 0 || returnValue > 0xFFFF) {
throw new ServletClientException("invalid port: " + returnValue);
if (returnValue < 1024) {
throw new ServletClientException("permission denied for port: " + returnValue);
return returnValue;
private static Socket connectToLocalServer(int port) throws ServletServerException {
Socket returnValue;
try {
returnValue = new Socket(InetAddress.getLocalHost(), port);
} catch (IOException e) {
throw new ServletServerException("could not connect to " + "local port");
return returnValue;
private static void forwardRequest(HttpServletRequest request, Socket connectionToLocalServer)
throws IOException, ServletClientException, ServletServerException {
byte buffer[];
DataInputStream clientIn = new DataInputStream(request.getInputStream());
buffer = new byte[request.getContentLength()];
try {
clientIn.readFully(buffer);
} catch (EOFException e) {
throw new ServletClientException("unexpected EOF " + "reading request body");
} catch (IOException e) {
throw new ServletClientException("error reading request" + " body");
DataOutputStream socketOut = null;
// send to local server in HTTP
try {
socketOut = new DataOutputStream(connectionToLocalServer.getOutputStream());
socketOut.writeBytes("POST / HTTP/1.0\r\n");
socketOut.writeBytes("Content-length: " + request.getContentLength() + "\r\n\r\n");
socketOut.write(buffer);
socketOut.flush();
} catch (IOException e) {
throw new ServletServerException("error writing to server");
private static void forwardResponse(HttpServletResponse response, Socket connectionToLocalServer)
throws IOException, ServletClientException, ServletServerException {
byte[] buffer;
DataInputStream socketIn;
try {
socketIn = new DataInputStream(connectionToLocalServer.getInputStream());
} catch (IOException e) {
throw new ServletServerException("error reading from " + "server");
String key = "Content-length:".toLowerCase();
boolean contentLengthFound = false;
String line;
int responseContentLength = -1;
do {
try {
line = socketIn.readLine();
} catch (IOException e) {
throw new ServletServerException("error reading from server");
if (line == null) {
throw new ServletServerException("unexpected EOF reading server response");
if (line.toLowerCase().startsWith(key)) {
responseContentLength = Integer.parseInt(line.substring(key.length()).trim());
contentLengthFound = true;
while ((line.length() != 0) &&
(line.charAt(0) != '\r') && (line.charAt(0) != '\n'));
if (!contentLengthFound || responseContentLength < 0)
throw new ServletServerException("missing or invalid content length in server response");
buffer = new byte[responseContentLength];
try {
socketIn.readFully(buffer);
} catch (EOFException e) {
throw new ServletServerException("unexpected EOF reading server response");
} catch (IOException e) {
throw new ServletServerException("error reading from server");
response.setStatus(HttpServletResponse.SC_OK);
response.setContentType("application/octet-stream");
response.setContentLength(buffer.length);
try {
OutputStream out = response.getOutputStream();
out.write(buffer);
out.flush();
} catch (IOException e) {
throw new ServletServerException("error writing response");
}I checked also with packets monitoring tool, I couldn't see any http transportation.
Any help will be appreciated. -
Little help needed regarding http and https
Hi,
I maintain a website for my organization. Recently, for a login page, I started using HTTPS. It works fine with HTTPS.
The problem I face is : When a user goes to login page, he sees the login page via HTTPS. Now, if user doesn't submit the login form but chooses to browse some other link on the same page, that page will still be shown using HTTPS because links are relative. This increases unnecessary HTTPS traffic on the server.
I need a solution that can help me to change protocol back to HTTP if the user doesn't submit login form. I have written small piece of java script that can check at the time of leaving the page. If submit button wasn't pressed, it should change the protocol back to HTTP. I have played around window.location object trying to change it's href property. But, no luck yet. Please help me.
window.onunload = function()
// if submit button wasn't pressed, change the protocol back to HTTP
if (!submitPressed)
window.location.protocol="http:";
alert(windows.location.href);
window.location.port = "80";
}Please let me know if you know about some simple solution.
Edited by: Di_Ke on Nov 13, 2007 2:12 PM
Edited by: Di_Ke on Nov 13, 2007 2:14 PMJust to clarify, before anyone can answer: Do you have access to the web server settings, and are you looking for a server side solution for this problem? If the answer to any of those two question is no, and you are just looking for a javascript help, this forums is not the best source for answers.
-
Message Interface for HTTP to JDBC synchronous scenario
Hi Experts,
Could you please explain the Message Interface from the below blog. Actually, I am confused with the Outbound Interface. Is it correct?
/people/siva.maranani/blog/2005/09/16/xi-how-to-on-jdbc-receiver-response
1. LoginData_Sync_OUT_MI
Input Message : Role_MT
Output Message : LoginData_MT
2. LoginData_DB_Sync_IN_MI
Input Message : LoginData_DB_DT
Output Message : Dummy_DT
Regards
SaraHi All,
Here is my Interface mapping's problem details.
Scenario : I have to pass EmpId as a request from webservice to JDBC, If we have the EmpId address in the JDBC then we have to return the address of the employee as a response to Webservice.
Please find the below datatype, message type and etc., which I have used it for the scenario.
1. Data Types:
a) DT_REQUEST ( Webservice to XI request)
1. EmpId
b) DT_JDBC_REQUEST ( XI to JDBC request)
1. EmpId ,2. EmpName, 3. Company,4. AddressLine1
5. AddressLine2,6. City,7. State
c) DT_JDBC_RESPONSE (JDBC to XI response)
1. EmpId ,2. EmpName, 3. Company,4. AddressLine1
5. AddressLine2,6. City,7. State
d) DT_RESPONSE (XI to Webservice response)
1. EmpId ,2. EmpName, 3. Company,4. AddressLine1
5. AddressLine2,6. City,7. State
2. Message Type created according to the Data Type.
3. Message Interface:
a) MI_Outbound
<b>Output Message :</b> MT_REQUEST
<b>Input Message :</b> MT_JDBC_RESPONSE
b) MI_Inbound
Input Message : MT_JDBC_REQUEST
Output Message : MT_RESPONSE
4. Message Mapping:
a) MM_REQUEST[EmpId mapping]
Source Message : MT_ REQUEST
Target Message : MT_JDBC_REQUEST
b) MM_RESPONSE [Mapping for all the fields]
<b>Source Message : MT_JDBC_RESPONSE
Target Message : MT_RESPONSE</b>
5. Interface Mapping
IM_WEB_DB
Source Interface : MI_Outbound
Target Interface : MI_Inbound
Request :
Source Message : MT_REQUEST
Target Message : MT_JDBC_REQUEST
Response :
<b>Source Message : MT_RESPONSE
Target Message : MT_JDBC_RESPONSE</b>
Here the source Message should be MT_JDBC_RESPONSE and the Target Message should be MT_RESPONSE. But when I tried to create the Interface Mapping I am getting the above bolded Response Messages automatically populated by XI.
Actually, I have followed Siva's blog to do this scenario. Finally confused with the Interface Mapping's response messages. So, please help me out with this scenario steps.
Regards
Sara -
Help needed about HTTP Request Headers
HI All,
Regarding HTTP RFC 1945 I have to use headers request-line and message is there any functionality in Servlets or JSP to access both them. I used “request.getHeaderNames()”, which return the headers “ACCEPT,ACCEPT-ENCODING ,ACCEPT-LANGUAGE ,CACHE-CONTROL ,CONNECTION ,CONTENT-LENGTH ,CONTENT-TYPE ,COOKIE ,HOST ,REFERER ,USER-AGENT” but not request-line and message.
Kindly provide the help to access them.
Regards,
Kashif Bashir
AdamSoft Intl
Lahore, PakistanI had a look at RFC 1945. It gives an example of what it calls a Request-Line:GET http://www.w3.org/pub/WWW/TheProject.html HTTP/1.0But as far as I can see it doesn't describe this anywhere as being a header. So it doesn't surprise me that getHeaderNames() doesn't return it.
I'm also surprised you're even trying to access this low-level information with a high-level tool like a servlet. You could probably reconstruct it with various servlet methods, though. You know the method (e.g. "GET") and you can find out the URL from various methods of the HttpServletRequest. -
Help needed about HTTPS and policy files !!
Hi everyone,
my Web Start application crashes with a SSLPeerUnverifiedException when I
try to connect to the server with HTTPClient :
// proxy settings
HTTPConnection.setProxyServer(ipProxy, portProxy);
// connection
HTTPConnection con = new HTTPConnection("https", serverName, -1);
// Post (then there is a SSLPeerUnverifiedException....)
HTTPResponse rsp = con.Post("/myurl.jsp, toSend, ct_hdr);
My application runs in a secure environnement configured by the javaws.policy :
grant codeBase "file:${jnlpx.home}/javaws.jar" {
permission java.security.AllPermission;
and the ${user.home}.java.policy (shared by another application, an applet I think) :
keystore "file:${user.home}/xxxxxxxxxxxxxxxxxxxxx.p7c";
grant codebase "https://xxxxxxxxxxxxxxx/-" signedby "xxxxxxxxxx" {
permission java.lang.RuntimePermission "usePolicy";
permission java.lang.RuntimePermission "accessDeclaredMembers";
permission java.lang.RuntimePermission "setIO";
permission java.lang.RuntimePermission "modifyThread";
permission java.lang.RuntimePermission "stopThread";
permission java.lang.RuntimePermission "accessClassInPackage.sun.security.provider";
permission java.lang.RuntimePermission "loadLibrary.*";
permission java.security.SecurityPermission "insertProvider.SUN";
permission java.security.SecurityPermission "insertProvider.JCRYPTO";
permission java.security.SecurityPermission "insertProvider.JCRYPTO_PKCS11";
permission java.security.SecurityPermission "putProviderProperty.JCRYPTO";
permission java.security.SecurityPermission "putProviderProperty.JCRYPTO_PKCS11";
permission java.security.SecurityPermission "removeProviderProperty.JCRYPTO";
permission java.security.SecurityPermission "removeProvider.JCRYPTO";
permission java.security.SecurityPermission "removeProvider.JCRYPTO_PKCS11";
permission java.security.SecurityPermission "removeProvider.SUN";
permission java.util.PropertyPermission "*", "read,write";
permission java.io.FilePermission "<<ALL FILES>>", "write,read,delete";
permission java.net.NetPermission "specifyStreamHandler";
permission java.net.SocketPermission "localhost:1024-", "listen";
permission java.net.SocketPermission "*", "connect,accept,listen,resolve";
permission java.awt.AWTPermission "accessClipboard";
permission java.lang.RuntimePermission "queuePrintJob";
permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
permission java.awt.AWTPermission "showWindowWithoutWarningBanner";
grant codebase "file:/myApplication/-" {
permission java.security.AllPermission;
In this file (.java.policy) when I replace "codebase "https://xxxxxxxxxxxxxxx/-""
by "codebase "http://xxxxxxxxxxxxxxx/-"" everything works fine !! It's very very
very very strange...
my application is launched by Web Start 1.2 and use JRE 1.4.1
Any ideas ? Please, I become crazy...In this file (.java.policy) when I replace "codebase
"https://xxxxxxxxxxxxxxx/-""
by "codebase "http://xxxxxxxxxxxxxxx/-"" everything
works fine !! I am not so sure that a code source cares for whether the resource is downloaded with s-http or normal http. Is the distinction important for the policy file?
You could go digging in the RFC that describes what a URL is (because that is what the code source is).
Also you could switch on a nice flag in you server environment that output information if security things go wrong: -Djava.security.debug=failure
In the output you should see from where your code is loaded. If it says http and not https, then that is what should appear in your policy file. -
Hi Experts,
I am doing a HTTP to JDBC synchronous interface, while testing it from the Component Monitoring using the Test Message, i get the status as Message Sent . But when i check it in the SXMB_MONI i am getting the following error
com.sap.aii.af.ra.ms.api.DeliveryException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'kss_activity_stg kas' (structure 'STATEMENT'): java.sql.SQLException: FATAL ERROR document format: structure 'STATEMENT', no key element
I have done the interface using this blog, but the thing is i did not use the BPM which were mentioned in the Blog.
/people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
Can any one help me out in this regard?
Regards,
PCRaj,
The request Structure is of the following way
STATEMENT
TABLENAME
ACTION
TABLE
ACCESS
empno
empname
empsal
sorry for the delayed response, i was out of the office.
Thanks,
PC -
I design a test scenario, http to jdbc synchronous.
I send a test message in rwb, integration Engine. but I can't see message entry in sxmb_moni, and rwb message monitoring.
When I send error sql, I can see message in sxmb_moni.
I don't know why.
Reciever sql request message is
<?xml version="1.0" encoding="UTF-8"?>
<ns0:sd025QR xmlns:ns0="http://topfine.com/TG/BPM"><ST1><DML action="SQL_QUERY"><access>select * from o_tns16_base where sapflag='0'</access></DML></ST1></ns0:sd025QR>
response message structure is:
<?xml version="1.0" encoding="UTF-8"?>
<ns0:sd025QR_response xmlns:ns0="http://topfine.com/TG/BPM">
<ST1_response>
<row>
<compcd/>
<custcd/>
<cigcd/>
<baseqty/>
<unitid/>
<upddate/>
<mq_lsh/>
</row>
</ST1_response>
</ns0:sd025QR_response>got to SXMB_ADM -- > integration engine -- > specific configuration -- > change your logging_synch parameter value to 1
-
Http to jdbc sync scenario needed
hi all,
Can any one give me certain example of http to jdbc sync scenario
Thanks in advance.Hi,
Refer this link.
For JDBC receiver side settings
http://help.sap.com/saphelp_nw2004s/helpdata/en/cf/406642ea59c753e10000000a1550b0/content.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
JDBC Receiver Adapter -- Synchronous Select Step by Step
For HTTP
http://help.sap.com/saphelp_nw2004s/helpdata/en/44/79973cc73af456e10000000a114084/content.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/b1/f29e7a56e18a439984a3c6630951d2/content.htm
http://help.sap.com/saphelp_nw04/helpdata/en/14/ef2940cbf2195de10000000a1550b0/content.htm
JDBC Receiver Adapter -- Synchronous Select Step by Step
HTTP Queue
error in HTTP to file scenario
Regards,
Sharanya.
Edited by: sharanya devaraj on Aug 5, 2008 8:09 AM -
Help needed for using BASIC authentication through JDBCRealm
Help needed.
Hello,
I am doing a degree project, so far it works fine in my local machine, I need to try it on my virtual hosting (as it is a live server).
My project requires JDBCRealm, that is BASIC authentication loading access data from mysql database. Normally this setup can be done in Server.xml file, because my Tomcat hosting is a virtual one, I only have permission to access the web.xml file.
My question is: is it possible to get it done in an alternative way? In web.xml? Some properties file maybe?
Thank you very much.You can set this up for your context using META-INF/context.xml instead of working with server.xml.
Make a directory called META-INF under your webapp ( it'll be at the same level as WEB-INF ). Under this, add a context.xml with all your context specific configuration including the realm. A sample is below
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/myApp" reloadable="true">
<Realm
className="org.apache.catalina.realm.JDBCRealm"
driverName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
connectionURL="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=myDB;SelectMethod=Cursor;"
connectionName="username" connectionPassword="password"
digest="MD5" userTable="users" userNameCol="userid" userCredCol="userpassword"
userRoleTable="user_roles" roleNameCol="rolename"
/>
</Context>Hope this helps.
People on the forum help others voluntarily, it's not their job.
Help them help you.
Learn how to ask questions first: http://faq.javaranch.com/java/HowToAskQuestionsOnJavaRanch
---------------------------------------------------------------- -
Help needed to run JSTL 1.1 in Tomcat 6.0.16
Hi All,Help needed to run JSTL 1.1 in Tomcat 6.0.16. I am trying to run the example given in http://tomcat.apache.org/tomcat-6.0-doc/jndi-datasource-examples-howto.html The example tries to connect to MySQL database from JSP using JSTL and JNDI Datasource.I am running the example using Eclipse 3.4.2 using Sysdeo plugin to start and stop Tomcat server from Eclipse IDE.
My web.xml file has <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
</web-app>
and test.jsp has proper taglib directives
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
I have placed the jstl.jar and standard.jarof the jakarta-taglibs-standard-1.1.2.zip under E:\Deepa\workspace\DBTest\WebContent\WEB-INF\lib directory also placedcontext.xml file under E:\Deepa\workspace\DBTest\WebContent\META-INF and the content of context.xml is as below
<Context path="/DBTest" docBase="DBTest"
debug="5" reloadable="true" crossContext="true">
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="deepa" password="mysql" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/>
</Context>
Now while running the example, Eclipse creates one DBTest.xml file under C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost
which has the following line:
<Context path="/DBTest" reloadable="true" docBase="E:\Deepa\workspace\DBTest" workDir="E:\Deepa\workspace\DBTest\work" />
I am getting the following error when running http://localhost/DBTest/WebContent/test.jsp
in Browser:
<HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/sql cannot be resolved in either web.xml or the jar files deployed with this application
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:116)
org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:315)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:148)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:431)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:494)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1444)
org.apache.jasper.compiler.Parser.parse(Parser.java:138)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:216)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:154)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:315)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:282)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
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)
In the Tomcat Server console, I am getting the following error:
INFO: Server startup in 7295 ms
May 20, 2009 6:36:48 AM org.apache.jasper.compiler.TldLocationsCache processWebDotXml
WARNING: Internal Error: File /WEB-INF/web.xml not found
May 20, 2009 6:36:48 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/sql cannot be resolved in either web.xml or the jar files deployed with this application
what is the problem with my code?
When running the same example, by creating a local server in Eclipse(creating new Server connection pointing to same Tomcat 6.0 installation) it runs fine without any error.Hi evnafets,
Wow, very helpful information, great insight into working of Eclipse. Thanks a lot.
I have one more question. I have a context.xml file under {color:#0000ff}E:\Deepa\workspace\DBTest\WebContent\META-INF{color} folder and that has the Resource element to connect to MySQL database:
{code{color:#000000}}{color}<Context path="/DBTest" docBase="DBTest" debug="5" reloadable="true" crossContext="true">
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="deepa" password="mysql" driverClassName="com.mysql.jdbc.Driver"
{color:#0000ff}url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/>{color}
{color:#0000ff}</Context>{color}As usual when running application in local Tomcat server of Eclipse, this data source works fine. But when I run the application on Tomcat, by starting Sysdeo plugin from Eclipse, the DBTest.xml file created in C:\Tomcat 6.0\conf\Catalina\localhost has the context entry as<Context path="/DBTest" reloadable="true" docBase="E:\Deepa\workspace\DBTest\WebContent" workDir="E:\Deepa\workspace\DBTest\work">
</Context>The<Resource> element I have specified in the context.xml of \WebContent\META-INF folder is not taken into account by Tomcat and it gives the following error:May 21, 2009 5:20:04 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "org.apache.tomcat.dbcp.dbcp.SQLNestedException_: Cannot create JDBC driver of class '' for connect URL 'null'"
_at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.getConnection(_QueryTagSupport.java:276_)
at org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doStartTag(_QueryTagSupport.java:159_)
at org.apache.jsp.test_jsp._jspx_meth_sql_005fquery_005f0(_test_jsp.java:113_)
at org.apache.jsp.test_jsp._jspService(_test_jsp.java:66_)
at org.apache.jasper.runtime.HttpJspBase.service(_HttpJspBase.java:70_)
at javax.servlet.http.HttpServlet.service(_HttpServlet.java:717_)
at org.apache.jasper.servlet.JspServletWrapper.service(_JspServletWrapper.java:374_)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(_JspServlet.java:342_)
at org.apache.jasper.servlet.JspServlet.service(_JspServlet.java:267_)
at javax.servlet.http.HttpServlet.service(_HttpServlet.java:717_)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(_ApplicationFilterChain.java:290_)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(_ApplicationFilterChain.java:206_)
at org.apache.catalina.core.StandardWrapperValve.invoke(_StandardWrapperValve.java:233_)
at org.apache.catalina.core.StandardContextValve.invoke(_StandardContextValve.java:191_)
at org.apache.catalina.core.StandardHostValve.invoke(_StandardHostValve.java:128_)
at org.apache.catalina.valves.ErrorReportValve.invoke(_ErrorReportValve.java:102_)
at org.apache.catalina.core.StandardEngineValve.invoke(_StandardEngineValve.java:109_)
at org.apache.catalina.connector.CoyoteAdapter.service(_CoyoteAdapter.java:286_)
at org.apache.coyote.http11.Http11Processor.process(_Http11Processor.java:845_)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(_Http11Protocol.java:583_)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(_JIoEndpoint.java:447_)
at java.lang.Thread.run(_Thread.java:619_)
{code}
So to overcome this error I had to place the <Resource> element in DBTest.xml under C:\Tomcat 6.0\conf\Catalina\localhost {color:#000000}and then it works fine. {color}{color:#ff0000}*Why is the context.xml file in META-INF not considered by Tomcat server using Sysdeo Plugin?*
*Thanks,*
*Deepa*{color}
{color}
Edited by: Deepa76 on May 26, 2009 9:32 PM -
Hi all,
I am trying to execute a synchronous Http to Jdbc Scenario using MS Access table as my back end.
In design part ,I have followed the steps like
1. Created a http req ,jdbc req, jdbc response ,and then http response in Data types and the in Message types.
2.Created Outbound MI with http req and http response as input and output messages respectively,then Inbound message interface with jdbc req and jdbc response as input and output messages respectively.
3.In Message mapping with Http req and jdbc req as request mappings and jdbc response and http response as Response mappings following the Action and access Steps.
Thats Fine with design part
IN Configuration Part, Since it is a Http Sender ,i didnt create any sender agreement and sender communicatin channel.
Then Configured Jdbc adapter properly and i am able to access my table with that.
While Executing ,I can find that my message is sent in Runtime workbench and can find that Jdbc adapter is Running by showing green flag.
I was trying to send an empid of a table as key and expecting to retrieve the complete row of the corresponding key.
But I could not find the response even though everything is fine with XI.
Where Could be the problem ,where can I see the response from jdbc adapter .
Please help me out in solving this .
Thanks and Regards,
KalpanaHi Kalpana,
Can you check this weblog
/people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
This should help you...
Check the Response Mapping,also you have one IM with Reqest and Response mapping...
Also if you have SP16 then you can have sender CC for HTTP also ...
Regards,
sridhar -
SOAP to JDBC Synchronous scenario
Hi experts
As per my requirement iam going to do SOAP to JDBC.
Please guide me how to do SOAP to JDBC (synchronous)
through XI .any step by step docs or blogs related to this
please forward to
[email protected]
if helpful points will be rewarded.
Regards,
Nareshhi..
To send SOAP request u have to download the Altova XML spy tool..
follow this link for SOAP adapter.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d23cbe11-0d01-0010-5287-873a22024f79
for JDBC receiver adapter follow
/people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
regards
MAnas
reward if helpful.. -
Client Proxy to JDBC synchronous Scenario
I'm using Proxy--PI---JDBC synchronous shcenario, when i execute the proxy from R/3 it is giving me error "RCVR_DETERMINATION.NO_RECEIVER_CASE_BE" in configuration i have used one inbound receiver determination for request, my question is do i need to have one more reciever determination for response.
Thanks for help.No, you do not have to add additional receiver determination
Usually in sync scenario, make sure you have one receiver determination, no arbitration.
If you have condition for receiver detemination, make sure the condition only return one true.
Liang -
Help needed regarding a case study In Bpel
Weblogic Server 10.3.3
Soa Server 11.1.1.2.0
Oracle JDeveloper 11.1.1.4.0
Till now I have done the following things:
1) created a JMS queue
2)From a java program I can put messages and read messages from that queue
What is my requirement?
1) I want to put (produce) some JMS Messages in the queue from a BPEL process(Synchronous),
Then I want to read (consume)only one of the above created JMS Messages in the main BPEL process(Synchronous/asynchronous), then needs to process it
And based on my Business condition I have to write that message in the Database.
After successful completion of this instance only my main process should go to consume the next message in the queue.
Would anyone please help me in this issue?Alright I found something I am not sure if it is of use to you , A checksum is generally used to detect the integrity of file
it is calculated oin basis of hash algorithms so how it is useful to for incoming filed values i m not sure
Please find the links below
http://en.wikipedia.org/wiki/Checksum
http://www.fastsum.com/support/online-help/checksums.php
http://www.flounder.com/checksum.htm
http://www.mkyong.com/java/how-to-generate-a-file-checksum-value-in-java/
If it is useful , you need to implement a hash algorithm
regards
Ninad
Maybe you are looking for
-
This application has failed to start because msvcr71.dll was not found
Hi, I just downloaded the Flex 3.3 DK from here: http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3sdk Once unzipped I went to run this: C:\DATA\My Documents\_jim\flash\open-source\_Software\flex_sdk_3\bin\mxmlc.exe When I ran it, I got this
-
Unable to load dataclass information from sync services and appcrash????
i have an asus u50f seris notebook with windows 7 64 bit operating system as soon as i plug my ipod in i get a message saying mobiledevicehelper has stopped working. under detail the problem event name:APPCRASH application name:Applemobiledevicehelpe
-
Command-Drag select in list view in Lion
There are many things about Lion that irk the crap outta me, but this one is near the top. In ALL previous versions of Finder, one could, in list view, select a bunch of files by dragging over them, then, holding the command key down, add more non-co
-
Muse templates for Business Catalyst
Before the recent update for mobile devices I was able to atuomatically upload templates for webapps in Business Catalyst. Now it removed all my templates and does not to upload. Does anyone have this problem?
-
Hi All, I have done some customizations using narrative view of obiee11G which displays an image on canvas using HTML5. I can view report with the custom image using all the browsers except Internet explorer. After some research i found that i need t