Https Connection from servlets using JSSE.
Hi all,
Although my question is the same as the QOW for this week, there is an error "unsupported keyword EMAIL" returned when i try to establish a https connection using servlet. The error log is as follow:
=====================================
java.io.IOException: unsupported keyword EMAIL
at com.sun.net.ssl.internal.ssl.AVA.<init>([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.ssl.RDN.<init>([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.ssl.X500Name.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.ssl.X500Name.<init>([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnection.connect([DashoPro-V1.2-120198])
at com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnection.getInputStream([DashoPro-V1.2-120198])
at URLReader.doGet(URLReader.java:78)
===================================
Does anyone know the meaning of this error?
I try to write a java application using the similar code and it totally works fine(i can connect to the server and obtain the page). Does JSSE support Java Servlet? Or this is the problem of tomcat server? FYI, I'm using
Tomcat 3.2.2
Java SDK 1.3
Many thanks!
Ethan
p.s. Here is the source for my program
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.net.*;
import javax.net.ssl.*;
import com.sun.net.ssl.*;
public class URLReader extends HttpServlet{
private PrintWriter out = null;
public void doGet(HttpServletRequest req, HttpServletResponse res){
res.setContentType("text/html");
res.setHeader("Cache-Control", "no-cache");
res.setHeader("Progma", "no-cache");
out = res.getWriter();
java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
System.setProperty("javax.net.ssl.trustStore", "File_for_keyStore");
System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
try {
URL url = new URL("https://server_name:port/index.htm");
HttpsURLConnection urlconnection = (HttpsURLConnection)url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(urlconnection.getInputStream()));
String outputLine ;
while ( (outputLine = in.readLine()) != null){
out.println("There is the result: "+outputLine);
in.close();
catch(Exception e){
public void doPost(HttpServletRequest req, HttpServletResponse res){
}
I was just having this issue, after months of error-free ssl behavior, on a new machine i was installing (Note: that I was running the IBM jdk1.3) It turns out that when I was editing the java.security file to know about JCE/JSSE providers i had the providers in the wrong order. The Error causing sequence was:
security.provider.1=com.sun.net.ssl.internal.ssl.Provider
security.provider.2=com.ibm.crypto.provider.IBMJCA
# Extra provider added ibm@33894
security.provider.3=com.ibm.crypto.provider.IBMJCE
# extra provider i added
security.provider.4=sun.security.provider.Sun
The issue disappeared when i changed the order to:
security.provider.1=sun.security.provider.Sun
security.provider.2=com.sun.net.ssl.internal.ssl.Provider
security.provider.3=com.ibm.crypto.provider.IBMJCA
# Extra provider added ibm@33894
security.provider.4=com.ibm.crypto.provider.IBMJCE
hope that helps!
--john molnar
Trellis Network Security
Similar Messages
-
HTTPS connection from servlet to another webserver
Hi,
We want to make a https connection from a servlet in weblogic server to another
web server (not necessarily weblogic). We also need dual authentication. But whenever
we use URL.openConnection(), it always returns us weblogic's internal https and
SSL implementation. Since weblogic has no documentation about how to use these
internal classes, such as how to set trusted server certificate, and how to set
client certificate (servlet is a client of another web server). We want to use
jsse, after setting JSSE required system properties, I still get a weblogic's
httpsURLConnection. Can any of you tell me how to resolve this issue?
Thanks.
XinshiYeah, I'm using JSSE now. Here is what I did:
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provide());
Provider prov = new SimpleSecureProvider();
prov.setProperty("SecureRandom.efficient", "test.EfficientSecureRandom");
Security.insertProviderAt(prov, 1);
You don't really need the provider stuff to get the example working. I use it
to get around a quick in JSSE where the random number generator takes 15-30 seconds
to generate a random sequence at start up.
SimpleSecureProvider looks like this:
public class SimpleSecureProvider extends Provider
public SimpleSecureProvider()
super("SimpleSecureProvider-", 1.0, "Hack to enable more efficient random
seed generator");
test.EfficientSecureRandom is bascially an exact copy of Sun's SecureRandom.java
with the only difference that I used my own random number generator.
Anyway, rest of the code you need looks like this:
URL url= new URL("htps://someplace.com");
URLConnection sconnection = url.openConnection();
Do whatever.
I also stored jcert.jar, jnet.jar, jsse.jar in /usr/java/jdk1.3/lib/ext
I think that is everything.
I just noticed that service pack 9 has a security example that does not require
all these jsse hacks. I'm trying to get it to work, but not having much luck.
Anybody got this working right?
"Jayesh Patel" <[email protected]> wrote:
See if this works,
1. Add the 'j2ee.jar' to CALSSPATH in weblogic startup script.
2. Set the property SSLHandlerEnabled flase in config.xml
3. Add the following property permission to the
weblogic.policy' file under a 'grant' directive
for all codebases (bottom): 'permission java.security.AllPermission'
4. Use the following bit of source code to create an https connection:
import com.sun.net.ssl.*; ....
com.sun.net.ssl.HttpsURLConnection connection;
System.setProperty ("java.protocol.handler.pkgs",
"com.sun.net.ssl.internal.www.protocol");
java.security.Security.addProvider(new
com.sun.net.ssl.internal.ssl.Provider() );
URL url = new URL( "https", hostname, query );
-Jayesh
connection = (com.sun.net.ssl.HttpsURLConnection )url.openConnection(
"Xinshi Sha" <[email protected]> wrote in message
news:[email protected]...
Hi,
We want to make a https connection from a servlet in weblogic serverto
another
web server (not necessarily weblogic). We also need dual authentication.But whenever
we use URL.openConnection(), it always returns us weblogic's internalhttps and
SSL implementation. Since weblogic has no documentation about how
to
use
these
internal classes, such as how to set trusted server certificate, andhow
to set
client certificate (servlet is a client of another web server). Wewant to
use
jsse, after setting JSSE required system properties, I still get aweblogic's
httpsURLConnection. Can any of you tell me how to resolve this issue?
Thanks.
Xinshi -
Problem to connect to mysql from servlet using a javabean
Hi,
I'm new here and beginner on java to.
I have problem to connect to MySql database, by a connection javabean.
It's the following: a HTML page calls a servlet and this servlet imports the package connection javabean.
It has no problem when I establish the connection inside the servlet, with all its methods (public and private). But i want to separate the code connection from servlet.
Detail: there is no problem, using the javabean to connect to MS Access database.
I put "mysql-connector-java-3.1.12-bin.jar" file inside WEB-INF/lib application and common/lib directories.
I set the classpath:
SET CLASSPATH=%CATALINA_HOME%\COMMON\LIB\mysql-connector-java-3.1.12-bin.jar;%CLASSPATH%
I think that the servlet cannot create an instance of javabean, because passed by catch exception of the servlet init method.
But I don't know why.
Please Why?
Below there are the fragment of errors, servlet code e javabean code.
Thank you.
Zovao.
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
java.lang.NullPointerException
at CadServletFileBeanConexArq.doPost(CadServletFileBeanConexArq.java:47)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
Note: The line 47 is calling insertIntoDB javabean method.
========///////////////===============
// Here is the servlet CadServletFileBeanConexArq.java
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import java.sql.*;
import conJdbc.*;
public class CadServletFileBeanConexArq extends HttpServlet {
public ConexPed connect = null;
private String driver = "com.mysql.jdbc.Driver";
private String URL = "jdbc:mysql://localhost:3306/cadastro";
public void init( ServletConfig config )
throws ServletException
super.init( config );
try
connect = new ConexPed(driver, URL, "monty", "some_pass");
catch ( Exception e )
e.printStackTrace();
connect = null;
public void doPost( HttpServletRequest req,
HttpServletResponse res )
throws ServletException
boolean success = true;
String email, nome, sobrenome, produto, valor;
email = req.getParameter( "Email" );
nome = req.getParameter( "Nome" );
sobrenome = req.getParameter( "Sobrenome" );
produto = req.getParameter( "Produto" );
valor = req.getParameter( "Valor" );
res.setContentType( "text/html" );
if ( email.length() > 0 && nome.length() > 0 && sobrenome.length() > 0 && valor.length() > 0 )
/* inserting data */
success = connect.insertIntoDB(
"'" + email + "','" + nome + "','" + sobrenome + "','" + produto + "'", Double.parseDouble(valor) );
//closing connection
public void destroy()
connect.fecharConexao();
=============///////////////============
Here is the JavaBean.
package conJdbc;
import java.sql.*;
public class ConexPed
public Connection connection;
public Statement statement;
public ConexPed (String driver, String urlServidor, String user, String password)
try
Class.forName(driver);
connection = DriverManager.getConnection(urlServidor,user,password);
catch (ClassNotFoundException ex)
System.out.println("N�o foi poss�vel encontrar a classe do Driver: " + driver);
catch (SQLException ex)
System.out.println("N�o foi poss�vel conectar ao servidor");
try
statement = connection.createStatement();
catch (SQLException ex)
System.out.println("N�o foi poss�vel criar a statement");
*Inserting data to database
public synchronized boolean insertIntoDB( String stringtoinsert, double valor)
try
statement.executeUpdate( "INSERT INTO pedido values (" + stringtoinsert + " , " + valor + ");" );
catch ( Exception e ) {
System.err.println(
"ERROR: Problemas ao adicionar nova entrada" );
e.printStackTrace();
return false;
return true;
* Close statement.
public void fecharStatement()
try
statement.close();
catch (SQLException ex)
ex.printStackTrace();
* close database
public void fecharConexao()
try
connection.close();
catch (SQLException ex)
ex.printStackTrace();
}Hi,
I'm new here and beginner on java to.
I have problem to connect to MySql database, by a connection javabean.
It's the following: a HTML page calls a servlet and this servlet imports the package connection javabean.
It has no problem when I establish the connection inside the servlet, with all its methods (public and private). But i want to separate the code connection from servlet.
Detail: there is no problem, using the javabean to connect to MS Access database.
I put "mysql-connector-java-3.1.12-bin.jar" file inside WEB-INF/lib application and common/lib directories.
I set the classpath:
SET CLASSPATH=%CATALINA_HOME%\COMMON\LIB\mysql-connector-java-3.1.12-bin.jar;%CLASSPATH%
I think that the servlet cannot create an instance of javabean, because passed by catch exception of the servlet init method.
But I don't know why.
Please Why?
Below there are the fragment of errors, servlet code e javabean code.
Thank you.
Zovao.
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
java.lang.NullPointerException
at CadServletFileBeanConexArq.doPost(CadServletFileBeanConexArq.java:47)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
Note: The line 47 is calling insertIntoDB javabean method.
========///////////////===============
// Here is the servlet CadServletFileBeanConexArq.java
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import java.sql.*;
import conJdbc.*;
public class CadServletFileBeanConexArq extends HttpServlet {
public ConexPed connect = null;
private String driver = "com.mysql.jdbc.Driver";
private String URL = "jdbc:mysql://localhost:3306/cadastro";
public void init( ServletConfig config )
throws ServletException
super.init( config );
try
connect = new ConexPed(driver, URL, "monty", "some_pass");
catch ( Exception e )
e.printStackTrace();
connect = null;
public void doPost( HttpServletRequest req,
HttpServletResponse res )
throws ServletException
boolean success = true;
String email, nome, sobrenome, produto, valor;
email = req.getParameter( "Email" );
nome = req.getParameter( "Nome" );
sobrenome = req.getParameter( "Sobrenome" );
produto = req.getParameter( "Produto" );
valor = req.getParameter( "Valor" );
res.setContentType( "text/html" );
if ( email.length() > 0 && nome.length() > 0 && sobrenome.length() > 0 && valor.length() > 0 )
/* inserting data */
success = connect.insertIntoDB(
"'" + email + "','" + nome + "','" + sobrenome + "','" + produto + "'", Double.parseDouble(valor) );
//closing connection
public void destroy()
connect.fecharConexao();
=============///////////////============
Here is the JavaBean.
package conJdbc;
import java.sql.*;
public class ConexPed
public Connection connection;
public Statement statement;
public ConexPed (String driver, String urlServidor, String user, String password)
try
Class.forName(driver);
connection = DriverManager.getConnection(urlServidor,user,password);
catch (ClassNotFoundException ex)
System.out.println("N�o foi poss�vel encontrar a classe do Driver: " + driver);
catch (SQLException ex)
System.out.println("N�o foi poss�vel conectar ao servidor");
try
statement = connection.createStatement();
catch (SQLException ex)
System.out.println("N�o foi poss�vel criar a statement");
*Inserting data to database
public synchronized boolean insertIntoDB( String stringtoinsert, double valor)
try
statement.executeUpdate( "INSERT INTO pedido values (" + stringtoinsert + " , " + valor + ");" );
catch ( Exception e ) {
System.err.println(
"ERROR: Problemas ao adicionar nova entrada" );
e.printStackTrace();
return false;
return true;
* Close statement.
public void fecharStatement()
try
statement.close();
catch (SQLException ex)
ex.printStackTrace();
* close database
public void fecharConexao()
try
connection.close();
catch (SQLException ex)
ex.printStackTrace();
} -
How do i make http connection from an applet to a servlet
i am not able to make a http connection from the applet to servlet
my code for servlet is as follows
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class newDatabaseServlet extends HttpServlet {
// Connection con;
// Statement stmt;
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
resp.setContentType("text/content");
System.out.println("megha");
String mthd[] = req.getParameterValues("event");
System.out.println(mthd.length);
System.out.println(mthd);
System.out.println(req.getQueryString());
// System.out.println("megha");
PrintWriter fw = new PrintWriter(new FileOutputStream(new File("e:/JRun/servers/default/default-app/mycontent.txt")));
String s = "this text comes from servlet";
fw.print(s);
fw.flush();
if(mthd[0].equalsIgnoreCase("callEditor")) {
openEditor(req,resp);
public void openEditor(HttpServletRequest req, HttpServletResponse resp) {
/* try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection("jdbc:oracle:thin:@pc6:1521:oradba","test","test");
catch(Exception e) {
e.printStackTrace();
try {
resp.sendRedirect("/RunApp1.html");
catch(IOException e) {
e.printStackTrace();
/*try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection("jdbc:oracle:thin:@pc6:1521:oradba","test","test");
catch(Exception e) {
e.printStackTrace();
resp.setContentType("text/html");
PrintWriter output = resp.getWriter();
try {
stmt = con.createStatement();
String strContent = "select * from edTable where newsid = 2";
ResultSet rs = stmt.executeQuery(strContent);
if(rs.next()) {
String newsText = rs.getString(2);
/* StringBuffer buf = new StringBuffer();
buf.append("<B>servlet</B>");
try {
resp.sendRedirect("RunApp");
catch(IOException e) {
e.printStackTrace();
// output.println(buf.toString());
// output.close();
my code for applet is
import javax.swing.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import java.awt.*;
import javax.swing.text.*;
import javax.swing.text.html.*;
public class EdApplet extends JApplet {
public void init() {
Container c;
c = getContentPane();
JPanel but = new JPanel();
c.add(but,BorderLayout.NORTH);
final JEditorPane je = new JEditorPane();
JScrollPane jsp = new JScrollPane(je);
HTMLEditorKit ht = new HTMLEditorKit();
je.setEditorKit(ht);
je.setEditable(true);
HTMLDocument mdoc = (HTMLDocument)ht.createDefaultDocument();
StyleSheet mcontext =mdoc.getStyleSheet();
je.setDocument(mdoc);
c.add(jsp,BorderLayout.CENTER);
JPanel bot = new JPanel();
c.add(bot,BorderLayout.SOUTH);
JButton save = new JButton("save");
but.add(save);
String str = getInitialText();
je.setText(str);
String servletUrl="http://pc7:8100/servlet/newDatabaseServlet";
try{
URL servletURL = new URL(servletUrl);
URLConnection servletConnection = servletURL.openConnection();
servletConnection.setRequestProperty("event","saveText");
servletConnection.setDoOutput(true);
servletConnection.setUseCaches(false);
catch(Exception e) {
// je.setText(e.printStackTrace());
ActionListener lst = new ActionListener() {
public void actionPerformed(ActionEvent ae) {
String save = je.getText();
saveText(save,je);
save.addActionListener(lst);
//je.setText("<B>this</B>");
//URLConnection servletConnection = null;
/* try {
String servletUrl="http://pc7:8100/servlet/newDatabaseServlet";
URL myUrl = new URL(servletUrl);
servletConnection = myUrl.openConnection();
servletConnection.setDoOutput(true);
servletConnection.setUseCaches(false);
/* BufferedReader br = new BufferedReader(new InputStreamReader(servletConnection.getInputStream()));
String t = br.readLine();
je.setText(t);
catch(Exception e) {
e.printStackTrace();
/* ActionListener lst = new ActionListener() {
public void actionPerformed(ActionEvent ae) {
BufferedReader br = new BufferedReader(new InputStreamReader(servletConnection.getInputStream()));
String t = br.readLine();
je.setText(t);
click.addActionListener(lst);
/*void String changeText(UrlConnection con) {
BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream));
String t = br.readLine();
return t;
public String getInitialText()
//String me = null;
URLConnection textConnection = null;
StringBuffer sb = new StringBuffer();
try {
String textUrl="http://pc7:8100/mycontent.txt";
URL myUrl = new URL(textUrl);
textConnection = myUrl.openConnection();
textConnection.setDoInput(true);
textConnection.setUseCaches(false);
BufferedReader br = new BufferedReader(new InputStreamReader(textConnection.getInputStream()));
// me = (String)servletConnection.getContent();
String s = null;
while((s = br.readLine())!=null) {
sb.append(s);
catch(Exception e) {
e.printStackTrace();
return sb.toString();
public void saveText(String saveStr,JEditorPane je) {
//String saveStr = je.getText();
//String servletUrl="http://pc7:8100/servlet/newDatabaseServlet?event='saveText'&newsid='2'";
//String servletGet="http://pc7:8100/servlet/newDatabaseServlet";
String servletUrl="http://pc7:8100/servlet/newDatabaseServlet";
//String servletUrl = servletGet + "?"
// + URLEncoder.encode("event") + "="
// + URLEncoder.encode("saveText");
// je.setText(servletUrl);
try {
URL servletURL = new URL(servletUrl);
URLConnection servletConnection = servletURL.openConnection();
// servletConnection.setRequestProperty("event","saveText");
servletConnection.setRequestProperty(
"User-Agent","Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
//System.out.println("from applet");
servletConnection.setDoOutput(true);
servletConnection.setUseCaches(false);
//Propertiew prop = new Properties();
// prop.put("event","saveText");
PrintStream out = new PrintStream(servletConnection.getOutputStream());
out.println("event");
out.close();
catch(IOException e) {
je.setText(e.toString());
kindly tell me what is the error
what is the best method of doing this
thanking u in anticipation
megha soodomg O_o
We cannot debug your code, but:
Did you try the servlet directly from your browser? Does it work?
Best regards from Germany,
r.v. -
HTTPS connection from portal to external webserver
Hi,
I am looking for a way to open a HTTPS connection from portal server to an external webserver. According to <a href="http://help.sap.com/saphelp_nw04/helpdata/en/e2/71c83edf72e16be10000000a114084/content.htm">SAP</a> the code should look like
KeyStore keystoreCAs = ...
SecureConnectionFactory factory = new SecureConnectionFactory(keystoreCAs, null);
HttpURLConnection con = factory.createURLConnection("https://www.mycompany.com");
Does not look difficult, <b>but how do I create the keystore object</b>? The keystore object should somehow be connected to the portal server's keystore which manages the certificates of trusted Certificate Authorities.
Any ideas?
Regards,
MartinHi,
meanwhile I solved the problem by my own. The solution slightly simplified is given below.
javax.naming.InitialContext ctx = new javax.naming.InitialContext();
java.lang.Object o = ctx.lookup("keystore");
com.sap.engine.services.keystore.interfaces.KeystoreManagerWrapper_Stub manager = (com.sap.engine.services.keystore.interfaces.KeystoreManagerWrapper_Stub) o;
java.security.KeyStore keystoreCAs = manager.getKeystore("TrustedCAs");
com.sap.security.core.server.https.SecureConnectionFactory factory = new SecureConnectionFactory(keystoreCAs, null);
java.net.HttpURLConnection con = factory.createURLConnection("https://www.mycompany.com");
For connecting via a proxy the host name and port number of the proxy have to be set as System properties using "https.proxyHost" and "https.proxyPort".
java.util.Properties systemSettings = System.getProperties();
systemSettings.put("proxySet", "true");
systemSettings.put("https.proxyHost","192.168.0.1") ;
systemSettings.put("https.proxyPort", "80") ;
Additionally you have to make sure that the server's certificate is issued by a trusted Certification Authority (Must have an entry in your Keystore "TrustedCAs"). To verify this use the Visual Administrator and view service "Key Storage".
Regards,
Martin -
HTTPS connection from database
Hi all,
I have to implement https connection from a database with a Web server which requests a client certificate. I have the certificate in the wallet, but UTL_HTTP does not send it to the Web server.
So, is there any way to connect to a Web server which requires a client certificate?Could you explain how transport protocol influences certificate exchange during SSL session?
-
Opening an https connection from within a Servlet.
I am having problems trying to establish an HTTPS connection to a servlet from within a different servlet.
I get the java.net.MalformedURLException: unknown protocol: https. SSL is setup for the web server. Direct connections from the browser to a servlet work fine with SSL, but a connection from one servlet to another servlet fails. I'm stumped. Is there a separate SSL install/configuration required for the servlet engine? Could anyone explain?When you set up SSL enabled web server, you should be getting a trust cert file that knows the hand shake protocol to talk to that server. Once you have that file, you can load that file from that servlet using System.load and then you would be able to talk to anything that runs on that SSL enabled Web server.
Also you must have JSSE jar files installed in your system .
Check out this url:
http://java.sun.com/products/jsse/INSTALL.html
Let me know if you still have problems -
How to establish an Https connection from a html client
Hi! I�m totally new to Java so my question is rather"stupid". I have an html page that sends a post to a servlet
<form name="form" action="servlet/ServletLogOn" method="post">
I want to establish an https connection between the client and the servlet. How is it?
Thanks in advance.Ignore the previous poster's reply - he was obviously mislead by my original post re: JSSE.
How you install an SSL certificate on your webserver is completely dependent on the webserver you are using. Ususally there is some functionality for doing this from the administrative interface - usually involves pasting some text from the CA's (certificate authority, e.g. Verisign) site into a text box and designating a port number for SSL traffic (use 443, it's internet standard). I've actually only done this for Netscape Enterprise Server - you may want to find a forum for users of your webserver to ask for specifics. -
Making https: connection from java code loaded into Oracle 8i database
A bit of a blast from the past, really, as 8i provides a JVM at 1.2.2.
I need to provide an PL/SQL function which accesses a RESTful web service requiring https connection. Got the call working under 1.2 locally without much trouble using:
static {
System.setProperty("java.protocol.handler.pkgs",
"com.sun.net.ssl.internal.www.protocol");
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
}The trick is to get the Oracle database to run the code internally. What libraries do I need where? I get an extremely unhelpful NoClassDefFoundError, without mention of the offending class.
By doing loadjava with jcert.jar,. jnet.jar and jsse.jar (the libraries I'm using with the test program) I can get loadjava to accept and allegedly resolve the class.endasil wrote:
malcolmmc wrote:
Well, sadly look at the colour scheme.Yeah, sarcastic was I. The NoClassDef error seriously doesn't give a class name? I find it astonishing that any implementation would be that stupid.Seriously. The strange thing is that before I got to the NoClassDefFound I had a Initialization error (until I added a security rule for setting the Provider) and for that I got a full stack trace (in an obscure trace file, granted). -
HTTPs connection from SAP WebAS
Hello,
I have to establish a connection from SAP WebAS to an iSaSiLk server via HTTPS.
The iSaSiLk authentication is based on client certificates.
I've created a SSL client PSE, generated the Certificate Request, imported the certificate response and the chain of certificates associated with no errors. When testing the connection we're getting the following error message:
SAP icm log:
[Thr 1087400256] ->> SapSSLSessionInit(&sssl_hdl=0x2aaaba679980, role=1 (CLIENT), auth_type=3 (USE_CLIENT_CERT))
[Thr 1087400256] <<- SapSSLSessionInit()==SAP_O_K
[Thr 1087400256] in: args = "role=1 (CLIENT), auth_type=3 (USE_CLIENT_CERT)"
[Thr 1087400256] out: sssl_hdl = 0x1a3310c0
[Thr 1087400256] ->> SapSSLSetNiHdl(sssl_hdl=0x1a3310c0, ni_hdl=22)
[Thr 1087400256] NiIBlockMode: set blockmode for hdl 22 TRUE
[Thr 1087400256] <<- SapSSLSetNiHdl(sssl_hdl=0x1a3310c0, ni_hdl=22)==SAP_O_K
[Thr 1087400256] ->> SapSSLSetSessionCredential(sssl_hdl=0x1a3310c0, &cred_name=0x1a49e4e0)
[Thr 1087400256] SapISSLComposeFilename(): Filename = "/usr/sap/XID/DVEBMGS00/sec/SAPSSLSPHTID.pse"
[Thr 1087400256] <<- SapSSLSetSessionCredential(sssl_hdl=0x1a3310c0)==SAP_O_K
[Thr 1087400256] in: cred_name = "/usr/sap/XID/DVEBMGS00/sec/SAPSSLSPHTID.pse"
[Thr 1087400256] ->> SapSSLSetTargetHostname(sssl_hdl=0x1a3310c0, &hostname=0x1a4a09e0)
[Thr 1087400256] <<- SapSSLSetTargetHostname(sssl_hdl=0x1a3310c0)==SAP_O_K
[Thr 1087400256] in: hostname = "<remoteServer_to_be_accessed>"
[Thr 1087400256] ->> SapSSLSessionStart(sssl_hdl=0x1a3310c0)
[Thr 1087400256] SapISSLUseSessionCache(): Creating NEW session (0 cached)
[Thr 1087400256] Tue Jan 13 10:10:22 2009
*[Thr 1087400256] *** ERROR during SecudeSSL_SessionStart() from SSL_connect()==SSL_ERROR_SSL*
[Thr 1087400256] session uses PSE file "/usr/sap/XID/DVEBMGS00/sec/SAPSSLSPHTID.pse"
[Thr 1087400256] SecudeSSL_SessionStart: SSL_connect() failed
secude_error 536871693 (0x2000030d) = "none of the PSEs registered with hSsl can suffice the negotiated SSL cipher suite"
[Thr 1087400256] >> Begin of Secude-SSL Errorstack >>
[Thr 1087400256] ERROR in ssl3_get_certificate_request: (536871693/0x2000030d) none of the PSEs registered with hSsl can suffice
[Thr 1087400256] << End of Secude-SSL Errorstack
[Thr 1087400256] SSL_get_state() returned 0x00002150 "SSLv3 read server certificate request A"
[Thr 1087400256] No certificate request received from Server
[Thr 1087400256] <<- ERROR: SapSSLSessionStart(sssl_hdl=0x1a3310c0)==SSSLERR_SSL_CONNECT
[Thr 1087400256] ->> SapSSLErrorName(rc=-57)
[Thr 1087400256] <<- SapSSLErrorName()==SSSLERR_SSL_CONNECT
[Thr 1087400256] *** ERROR => IcmConnInitClientSSL: SapSSLSessionStart failed (-57): SSSLERR_SSL_CONNECT [icxxconn_mt
On the iSaSiLk server we're getting:
ssl_debug(2): Starting handshake (iSaSiLk 3.06)...
ssl_debug(2): Received v3 client_hello handshake message.
ssl_debug(2): Client requested SSL version 3.0, selecting version 3.0.
ssl_debug(2): Creating new session 11:5F:04:C9:0D:32:15:B9...
ssl_debug(2): CipherSuites supported by the client:
ssl_debug(2): SSL_RSA_WITH_RC4_128_SHA
ssl_debug(2): SSL_RSA_WITH_RC4_128_MD5
ssl_debug(2): SSL_RSA_WITH_3DES_EDE_CBC_SHA
ssl_debug(2): SSL_RSA_WITH_DES_CBC_SHA
ssl_debug(2): SSL_RSA_EXPORT_WITH_DES40_CBC_SHA
ssl_debug(2): SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5
ssl_debug(2): SSL_RSA_EXPORT_WITH_RC4_40_MD5
ssl_debug(2): CompressionMethods supported by the client:
ssl_debug(2): NULL
ssl_debug(2): Sending server_hello handshake message.
ssl_debug(2): Selecting CipherSuite: SSL_RSA_WITH_RC4_128_SHA
ssl_debug(2): Selecting CompressionMethod: NULL
ssl_debug(2): Sending certificate handshake message with server certificate...
ssl_debug(2): Sending certificate_request handshake message...
ssl_debug(2): Sending server_hello_done handshake message...
ssl_debug(2): IOException while handshaking: Connection closed by remote host.
ssl_debug(2): Sending alert: Alert Fatal: handshake failure
ssl_debug(2): Shutting down SSL layer...
ssl_debug(2): Closing transport...
From the iSaSiLk everything seems to be OK, but on the SAP WebAS the error "none of the PSEs registered with hSsl can suffice the negotiated SSL cipher suite" is really unclear, since the cipher chosen by the iSaSiLk is one of the ciphers sent by SAP WebAS...
Can anyone give me any suggestion?Hello Olivier,
Thanks for your answer.
I've implemented note 800240 which facilitates the PSE analysis by implementing the report ZSSF_TEST_PSE. With this report I'm able to check all the PSE content, which are:
Filename SAPSSLSPHTID.pse
PIN <no>
Signature X
Encryption X
Profile Parameter
DIR_INSTANCE /usr/sap/XID/DVEBMGS00 /usr/sap/XID/D00
sec/dsakeylengthdefault 1024
sec/libsapsecu /usr/sap/XID/SYS/exe/run/libsapcrypto.so
sec/rsakeylengthdefault 1024
ssf/name SAPSECULIB
ssf/ssf_md_alg SHA1
ssf/ssf_symencr_alg DES-CBC
ssf/ssfapi_lib /usr/sap/XID/SYS/exe/run/libsapcrypto.so
ssf2/name
ssf2/ssf_md_alg SHA1
ssf2/ssf_symencr_alg DES-CBC
ssf2/ssfapi_lib
ssf3/name
ssf3/ssf_md_alg SHA1
ssf3/ssf_symencr_alg DES-CBC
ssf3/ssfapi_lib
Environment variables
USER xidadm
SECUDIR /usr/sap/XID/DVEBMGS00/sec
PSE
Validity 18.12.2008 19:47:04 18.12.2009 19:47:04
Algorithm RSA (OID 1.2.840.113549.1.1.1)
Test signature
Signature OK
Verification OK
Test encryption
Encryption OK
Decryption OK
As you can see, the cipher algorithm used is RSA. Any suggestion... ?
An iSaSiLk server "is a Java programming language implementation of the SSLv2 (client-side), SSLv3, TLS 1.0 and TLS 1.1 protocols. It supports all defined cipher suites (except for Fortezza), including all AES and PSK cipher suites. iSaSiLk implements all standard TLS extensions, comes with an easy to use API and operates on top of the IAIK-JCE Javau2122 Cryptography Extension. iSaSiLk is highly configurable and will work with any alternative JCE implementation supported by a proper provider for supplying the required cryptographic algorithms".
Once again thanks for your answer. -
Https connection from Provider
I am creating an https URLConnection from a Provider. I generally use
com.sun.net.ssl.internal.ssl.Provider from the jsse package. Does anyone
know which class I should use in the portal environment. I am searching
through the lib jars and don't see anything yet?I just answered my own question by trial and error. You do not have to set
any Security or System properties, it's already taken care of (I don't know
where?). Https URLs magically work.
"James McCartney" <[email protected]> wrote in message
news:a125vf$[email protected]..
I am creating an https URLConnection from a Provider. I generally use
com.sun.net.ssl.internal.ssl.Provider from the jsse package. Does anyone
know which class I should use in the portal environment. I am searching
through the lib jars and don't see anything yet? -
User type for creating the Http connection from sap to xi
Hi Friends,
I need to create the Http and Rfc destination connection from R3 to XI.
For that what type of user is needed, like Dialog user and etc.,
Please guide me.
Thanks in advance
KarthikeyanHi,
If my Understanding is Correct You want to Make the RFC Destination of Type H From R/3 to XI.
If you want to send Any XML Data to XI( In case of Proxies Used means)
For Testing purpose You can use Your User And Once it went to production means You can Use Service User in the Logon Details( Ask Basis people to create one Service User & Use it)
REgards
Seshagiri -
Error trying to create https connection from Web Dynpro
Hi experts!!
I am trying to create a WD view with an actionButton and a form template, when the user fills the data in the form and presses the button, i want to create an Https connect and post some parameters to the URL.
HttpsURLConnection cannot be resolved,
com.sun.net.ssl.internal.ssl.Provider() does't not exist in the package com.sun.net.ssl.internal.ssl.Provider()
do i need to add any jars?? I've already added the jsse.jar
The code i use is the following.
private void sendHttp(){
String response = "";
HttpsURLConnection connection = null;
try {
System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
URL url = new URL(<your_url>);
connection = (HttpsURLConnection) url.openConnection();
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setAllowUserInteraction(true);
connection.setUseCaches(false);
} catch(Exception e) {
response = response + "Error in getting connection: " ;
response = response + e ;
if (connection != null){
try {
connection.setRequestMethod("POST");
connection.setFollowRedirects(true);
//build all the parameters into 1 string
String query = "parameter1name=" + URLEncoder.encode(parameter1value);
query += "&";
query += "parameter2name=" + URLEncoder.encode(parameter2value);
connection.setRequestProperty("Content-length",String.valueOf (query.length()));
connection.setRequestProperty("Content-Type","application/x-www- form-urlencoded");
connection.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)");
// open up the output stream of the connection
DataOutputStream output = new DataOutputStream( connection.getOutputStream() );
// write out the data
int queryLength = query.length();
output.writeBytes( query );
output.close();
//if responsecode <> 200 you should stop: should always be 200
String responsecode = connection.getResponseCode();
if (responsecode.equalsIgnoreCase("200")){
String inputLine;
StringBuffer input = new StringBuffer();
BufferedReader in = new BufferedReader( new InputStreamReader(connection.getInputStream()));
//Get site response
while ((inputLine = in.readLine()) != null) {
input.append(inputLine);
in.close();
response = response + input.toString();
} catch(Exception e) {
response = response + "Error in using connection: " ;
response = response + e ;
wdContext.currentContextElement().setResponse(response);Hai ,
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/526bd490-0201-0010-038e-d3ff7eb1d16e
please check above link .
application server u have take load balancing click on next there u take click on radio button of Msg server .
Regards ,
venkat -
HTTP connectivity error while using Blackberry MDS and JDE 5.0.0
Hello,
I am using BB MDS simulator 4.1.2 and BB JDE 5.0.0 for testing sample Oracle ADF Mobile client apps that I have developed.
My app tries to access webservices via HTTP.
Here is where I am encountering a HTTP connectivity issue.
1. For instance, while trying to test HTTP using Blackberry browser, I see the error : "Unknown host mobile.blackberry.com:80"
2. The sample I tried to run to test webservices - accepts a word from the user and gets it translated in to a desired language, using a webservice provided on the internet.
Here, I have tried to translate the word 'madam' from English to French.
I have encountered a HTTP/1.0 400 Bad Request.
Kindly have a look at the MDS Trace as below (related entries in bold) and suggest if I am missing something from the configuration perspective.
PS : I have tried various options from the blackberry forums but they were not very helpful.
<2010-05-24 17:48:16.000 IST>:[215]:<MDS-CS_MDS>:<DEBUG>:<LAYER = SCM, EVENT = Device connections: AVG latency (msecs)0>
<2010-05-24 17:48:16.000 IST>:[216]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = RemovedReceivingQueue, DEVICEPIN:CONNECT
IONID = 2100000a:771975383, ReceivingQueueSize = 0>
<2010-05-24 17:48:16.343 IST>:[217]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = Notification, TAG = 36110347, STATE = DE
LIVERED>
<2010-05-24 17:48:19.046 IST>:[218]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = RemovedSendingQueue, DEVICEPIN = 2100000
a>
<2010-05-24 17:49:57.437 IST>:[219]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = Receiving, TAG = 371769629, DEVICEPIN =
2100000a, VERSION = 16, CONNECTIONID = 771975384, SEQUENCE = 0, TYPE = CONNECTION-REQUEST, CONNECTIONHANDLER = httpc, PR
OTOCOL = TCP, PARAMETERS = [www.webservicex.net:80], SIZE = 121>
<2010-05-24 17:49:57.437 IST>:[220]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = CreatedReceivingQueue, DEVICEPIN:CONNECT
IONID = 2100000a:771975384, ReceivingQueueSize = 1>
<2010-05-24 17:49:57.437 IST>:[221]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = StartExecuting, TAG = 371769629, DEVICEP
IN = 2100000a, VERSION = 16, CONNECTIONID = 771975384, SEQUENCE = 0, TYPE = CONNECTION-REQUEST, CONNECTIONHANDLER = http
c, PROTOCOL = TCP, PARAMETERS = [www.webservicex.net:80], SIZE = 121>
<2010-05-24 17:49:57.437 IST>:[222]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = EndExecuting, TAG = 371769629, DEVICEPIN
= 2100000a, VERSION = 16, CONNECTIONID = 771975384, SEQUENCE = 0, TYPE = CONNECTION-REQUEST, CONNECTIONHANDLER = httpc,
PROTOCOL = TCP, PARAMETERS = [www.webservicex.net:80], SIZE = 121>
<2010-05-24 17:49:57.437 IST>:[223]:<MDS-CS_MDS>:<DEBUG>:<LAYER = SCM, EVENT = Available threads in DefaultJobPool = 9 r
unning JobRunner: DefaultJobRunner-3>
<2010-05-24 17:49:57.453 IST>:[224]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HTTP Thread: DefaultJobRunner-3 started>
<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION =>
<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Transmission Line Section]:>
*<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI*
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = GET /TranslateService.asmx/Translate?LanguageMode=English
TOFrench&Text=madam HTTP/1.1>
<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Headers Section]: 2 headers>
<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = x-rim-conttime:10000>
<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Host:www.webservicex.net>
<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Parameters Section]: 2 parameters>
*<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI*
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = LanguageMode=EnglishTOFrench>
*<2010-05-24 17:49:57.453 IST>:[225]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = ReceivedFromDevice, DEVI*
CEPIN = 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Text=madam>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION =>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Transmission Line Section]:>
*<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN*
*= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = GET /TranslateService.asmx/Translate?LanguageMode=EnglishTOFren*
ch&Text=madam HTTP/1.1>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Headers Section]: 6 headers>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Connection:close>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Via:MDS_4.1.2.17>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Accept:*/*>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = x-rim-original-accept:*/*>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = x-rim-conttime:10000>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Host:www.webservicex.net>
<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Parameters Section]: 2 parameters>
*<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN*
*= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = LanguageMode=EnglishTOFrench>*
*<2010-05-24 17:49:57.453 IST>:[226]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToServer, DEVICEPIN*
*= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Text=madam>*
<2010-05-24 17:49:57.515 IST>:[227]:<MDS-CS_MDS>:<DEBUG>:<LAYER = SCM, EVENT = Statistics save task started>
<2010-05-24 17:49:57.625 IST>:[228]:<MDS-CS_MDS>:<DEBUG>:<LAYER = SCM, EVENT = Statistics save task finished -- number o
f rows inserted:5>
<2010-05-24 17:50:18.453 IST>:[229]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToDevice, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION =>
<2010-05-24 17:50:18.453 IST>:[229]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToDevice, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Transmission Line Section]:>
*<2010-05-24 17:50:18.453 IST>:[229]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToDevice, DEVICEPIN*
*= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = HTTP/1.0 400 Bad Request>*
<2010-05-24 17:50:18.453 IST>:[229]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToDevice, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Headers Section]: 2 headers>
<2010-05-24 17:50:18.453 IST>:[229]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToDevice, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Content-Type:text/plain>
<2010-05-24 17:50:18.453 IST>:[229]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToDevice, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = Content-Length:35>
<2010-05-24 17:50:18.453 IST>:[229]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HANDLER = HTTP, EVENT = SentToDevice, DEVICEPIN
= 2100000a, CONNECTIONID = 771975384, HTTPTRANSMISSION = [Parameters Section]: 0 parameters>
<2010-05-24 17:50:18.468 IST>:[230]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = CreatedSendingQueue, DEVICEPIN = 2100000
a>
<2010-05-24 17:50:18.468 IST>:[231]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HTTP Thread: DefaultJobRunner-3 stopping>
<2010-05-24 17:50:18.468 IST>:[234]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = Sending, TAG = 36110349, DEVICEPIN = 210
0000a, VERSION = 16, CONNECTIONID = 771975384, SEQUENCE = 0, TYPE = DATA, SIZE = 48>
<2010-05-24 17:50:18.468 IST>:[235]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HTTP Thread: DefaultJobRunner-3 stopped>
<2010-05-24 17:50:18.484 IST>:[236]:<MDS-CS_MDS>:<DEBUG>:<LAYER = SCM, EVENT = Finished JobRunner: DefaultJobRunner-3, a
vailable threads in DefaultJobPool = 10, time spent = 21047ms>
<2010-05-24 17:50:18.500 IST>:[239]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = Sending, TAG = 36110350, DEVICEPIN = 210
0000a, VERSION = 16, CONNECTIONID = 771975384, SEQUENCE = 1, TYPE = DISCONNECT-ORDER, SIZE = 0>
<2010-05-24 17:50:18.500 IST>:[240]:<MDS-CS_MDS>:<DEBUG>:<LAYER = SCM, EVENT = Device connections: AVG latency (msecs)32>
<2010-05-24 17:50:18.500 IST>:[241]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HTTP Thread: ConnectionsInputStreamesReader0-Def
aultJobRunner-3 stopping>
<2010-05-24 17:50:18.500 IST>:[242]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, HTTP Thread: ConnectionsInputStreamesReader0-Def
aultJobRunner-3 stopped>
<2010-05-24 17:50:18.500 IST>:[243]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = RemovedReceivingQueue, DEVICEPIN:CONNECT
IONID = 2100000a:771975384, ReceivingQueueSize = 0>
<2010-05-24 17:50:18.531 IST>:[244]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = Notification, TAG = 36110349, STATE = DE
LIVERED>
<2010-05-24 17:50:18.562 IST>:[245]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = Notification, TAG = 36110350, STATE = DE
LIVERED>
<2010-05-24 17:50:19.046 IST>:[246]:<MDS-CS_MDS>:<DEBUG>:<LAYER = IPPP, EVENT = RemovedSendingQueue, DEVICEPIN = 2100000
a>Hi, there:
A couple of things to try and check:
- Does your network connection goes through proxy server? If you are behind a proxy server, then you would need to set up proxy server in MDS by open the file <MDS simulator install>/config/rimpublic.property, go to the [HTTP Handler] section, and add the following line:
application.handler.http.proxyEnabled = true
application.handler.http.proxyHost=<your proxy server host name>
application.handler.http.proxyPort=<your proxy server port>
- Try BlackBerry MDS simulator that came with JDE 5.0. MDS 4.1.2 should still work with 5.0 device simulators, but it's worth a shot
Can you hit the web service from the browser in your Blackberry simulator? Feel free to directly contact me at [email protected] - if necessary we can also pull in BlackBerry/RIM resources to help diagnose this.
Thanks,
Joe Huang -
Disturbing http connection from ISE to an unknown Internet address
I have an ISE version 1.1.2.145 Patch-5 running in standalone mode. No one has access to the ISE appliance except myself. The ISE has an IP address of 1982.168.1.1
today, I noticed that the ISE is attempting to make an outbound http to an unknown Internet IP address of files.liferay.com. Fortunately, my checkpoint firewall does not allow this connection:
Number: 99427
Date: 17Nov2013
Time: 23:03:11
Interface: eth2
Origin: Corp_Firewall
Type: Log
Action: Drop
Service: http (80)
Source Port: 58025
Source: Corp_Firewall-192.168.1.1 (192.168.1.1)
Destination: files.liferay.com (38.75.15.3)
Protocol: tcp
Rule: 100
Rule UID: {1234abcd-1111-xxxx-vvvv-aaaaaaaaaa}
Rule Name: Corp_Firewall Log Drop rule
Current Rule Number: 100-Corp_Firewall
Product: Security Gateway/Management
Product Family: Network
Policy Info: Policy Name: Corp_Firewall
Created at: Sat Nov 16 01:30:50 2013
Installed from: corp-mgmt-192.168.1.2
The question is why the ISE is doing this? What is the purpose for this http connection, some kind of "back door" by Cisco?Liferay is an open source web portal for hosting cloud applications. This is definitely NOT a Cisco back-door to the ISE.
About Us
Enterprise. Open Source. For Life.
Enterprise.
Liferay, Inc. was founded in 2004 in response to growing demand for Liferay Portal, the market's leading independent portal product that was garnering industry acclaim and adoption across the world. Today, Liferay, Inc. houses a professional services group that provides training, consulting and enterprise support services to our clientele in the Americas, EMEA, and Asia Pacific. It also houses a core development team that steers product development.
Open Source.
Liferay Portal was, in fact, created in 2000 and boasts a rich open source heritage that offers organizations a level of innovation and flexibility unrivaled in the industry. Thanks to a decade of ongoing collaboration with its active and mature open source community, Liferay's product development is the result of direct input from users with representation from all industries and organizational roles. It is for this reason, that organizations turn to Liferay technology for exceptional user experience, UI, and both technological and business flexibility.
For Life.
Liferay, Inc. was founded for a purpose greater than revenue and profit growth. Each quarter we donate to a number of worthy causes decided upon by our own employees. In the past we have made financial contributions toward AIDS relief and the Sudan refugee crisis through well-respected organizations such as Samaritan's Purse and World Vision. This desire to impact the world community is the heart of our company, and ultimately the reason why we exist.
You may want to investigate the applications being used on site.
Hopefully this helps.
Please Rate Helpful posts and mark this question as answered if, in fact, this does answer your question. Otherwise, feel free to post follow-up questions.
Charles Moreton
Maybe you are looking for
-
I extracted a lot of my old movies using PE3 that came from my 8MM camera. They played fine on XP. I now have Windows7 64 bit and when I play them in Windows Media Player, they only play the sound. I'm guessing that this is a codec issue. Should I re
-
Why dose my iPod turn white when I turn it on?
My iPod touch is not working correctly. When I turn it on it goes to the apple like it is soposed to but then goes to a whole white page. Why dose that happened?
-
WAP561 - Apple Bonjour trouble
Hello, I have two access point WAP561 with the last firmware ( 1.0.4.4). I have big trouble with apple Imac & Macbook. -Apple disconnecting -Bonjour Discover didn't work after 2 days I must reboot every 2 days the AP for workaround the problem. I had
-
HT4623 Will the ios 4.3 software EVER become available for 2nd Generation touch?
Does Apple plan to ever make the ios 4.3 available for the 2nd generation touch? Many of my apps are not longer working because they require the update. For example my Facebook app stopped working and there is no alternative app for it.
-
Problems with codec ALC 882 on i945 platinum
The essence such, was a parent payment with codec ALC 880, problems were not. Has bought parent payment MSI 945 platinum on it there is codec ALC 882, that is practically one and too. But there is a heap of problems. 1. Adjustments of sound outputs,