SSL Connection error on Weblogic - java

I am working on application. It is deployed on Weblogic and using the cluster.
After few hits on the application we are geeting SSL Connection Error.
On server Logs I saw this
javax.net.ssl.SSLException: Received fatal alert: unexpected_message
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1639)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1607)
at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1776)
at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1080)
at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:884)
at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:758)
at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:664)
at weblogic.security.SSL.jsseadapter.JaSSLEngine$5.run(JaSSLEngine.java:134)
at weblogic.security.SSL.jsseadapter.JaSSLEngine.doAction(JaSSLEngine.java:732)
at weblogic.security.SSL.jsseadapter.JaSSLEngine.unwrap(JaSSLEngine.java:132)
at weblogic.socket.JSSEFilterImpl.unwrap(JSSEFilterImpl.java:585)
at weblogic.socket.JSSEFilterImpl.unwrapAndHandleResults(JSSEFilterImpl.java:490)
at weblogic.socket.JSSEFilterImpl.unwrapAndHandleResults(JSSEFilterImpl.java:457)
at weblogic.socket.JSSEFilterImpl.isMessageComplete(JSSEFilterImpl.java:306)
at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:960)
at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:897)
at weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:130)
at weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:147)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:119)
Can any body please help me to resolve this.

Bug is related to coding problem in the application. Basically issue is with "Clone" a model object. Some one in the team have return a clone on Hibernate object which cloned all resources and cloned all child objects as well and the Object is so heavy and occupied lots of memory and by cloning it also claimed all resources and none were available to address next request. Solved the issue by taking the clone, instead used filer option to get the required data and copied in simple POJO. I know we have many clone technique's but we do not want that because we just need some data from model.

Related

Java error Caused by: Javax.net.ssl.SSLHandhakeException: Java.security.cert.CertificateExpiredException

We are having a problem with absorbing data from several FTP servers (hosted by a third paty) Our system is unable to absorb any files from the FTP servers while we are able to reach them via FileZilla. Other systems are able to reach them and place the files on the path, but our system will not pick them up and gives an error:
Caused by: Javax.net.ssl.SSLHandhakeException: Java.security.cert.CertificateExpiredException
enter image description here
Is someone able to advise us as all parties are saying it is not caused by them;
The Website hosting says its not caused by them, the FTP hosting says its not caused by them, and the developpers are also saying it is not caused by them :(
Certificate Expired Exception. This is thrown whenever the current
Date or the specified Date is after the notAfter date/time specified
in the validity period of the certificate.
Check if your application server and FileZilla try to access the same server.
If so, then you might need to update the certificate in the trust store of your application server. (The certificate might have been added to the machine from which you are using FileZilla - as far as I understand these 2 are different machines).
The error is clear about the certificate expiration. Hence, either FileZilla is ignoring that error, or it's using another certificate. So you have 2 options: either ask your developers to ignore the certificate as well, or to ask for updating the certificate on the other side.
In the end, it turned out the Root SSL certificate of the FTP host was indeed expired. This seems to be a rare situation.

Nexus 2.10 broken pipe IOException

I am using nexus 2.10 having recently upgraded from nexus 2.8. The reason I upgraded was because I was getting the following exception in my logs and thus the jar was not downloaded and Nexus 2.10 gives a few more details in the log regarding the broken pipe error.
So in my logs I get the following error (replaced i[p address with string host name).
2014-10-21 15:18:22,556+0100 INFO [qtp-855494215-66] anonymous org.sonatype.nexus.proxy.storage.remote.httpclient.HttpClientRemoteStorage - Initializing remote transport for proxy repository "Central" [id=central]...
2014-10-21 15:23:59,440+0100 WARN [qtp-855494215-69] anonymous org.sonatype.nexus.content.internal.ContentServlet - org.eclipse.jetty.io.EofException, caused by: java.io.IOException: Broken pipe [client=host.name,ua=m2e/3.9.1.v20130814-1242/1.4.0.20130601-0317/1.6.0_45,req=GET http://xx.xx:8081/nexus/content/groups/public/org/springframework/spring-jdbc/4.1.1.RELEASE/spring-jdbc-4.1.1.RELEASE.jar]
2014-10-21 15:24:43,329+0100 WARN [qtp-855494215-67] anonymous org.sonatype.nexus.content.internal.ContentServlet - org.eclipse.jetty.io.EofException, caused by: java.io.IOException: Broken pipe [client=host.name,ua=m2e/3.9.1.v20130814-1242/1.4.0.20130601-0317/1.6.0_45,req=GET http://xx.xx5:8081/nexus/content/groups/public/org/springframework/spring-tx/4.1.1.RELEASE/spring-tx-4.1.1.RELEASE.jar]
2014-10-21 15:24:58,333+0100 WARN [qtp-855494215-66] anonymous org.sonatype.nexus.content.internal.ContentServlet - org.eclipse.jetty.io.EofException, caused by: java.io.IOException: Broken pipe [client=host.name,ua=m2e/3.9.1.v20130814-1242/1.4.0.20130601-0317/1.6.0_45,req=GET http://xx.xx:8081/nexus/content/groups/public/org/springframework/spring-context/4.1.1.RELEASE/spring-context-4.1.1.RELEASE-sources.jar]
Can anyone advise how to get past this error because currently some jars are not being downloaded. This does not apply to all jars for eg i just downloaded the nekohtml-0.9.5.jar no issues. Could this be possibly something to do with size? In my maven repository I just get a spring-test-4.1.1.RELEASE.jar.lastUpdated jar which is only 1kb in size.
Also I am running behind a firewall so have a proxy server configured in the nexus settings.
UPDATE:
this seems to be an issue only when done through eclipse. I was able to download sources and jars etc fine when I did it from the command line. I am using Eclipse keplar and the m2e plugin. Can anyone comment on this?
All advice appreciated
Thanks
The broken pipe exception occurs when nexus has received an http request from a client, prepares a response, but when it goes to write the response it finds the socket has already been closed.
Likely causes of this are:
An end user initiating a request and then canceling it (or
navigating away from a web page before it completes)
A client which does not properly close socket connections
A client's read timeout setting being reached
A reverse proxy in between nexus and the client (such as apache or
nginx) terminating the connection
Therefore you'll need to begin your investigation on the client side. If it turns out the client or reverse proxy's read timeout setting is triggering this then you'll need to investigate why nexus is responding slowly.
Your Nexus server is probably not able to reach some external repositories if it is running inside a network behind a proxy. You have to make sure you have the http proxy configured in Nexus and that any URL's of remote proxy repositories you want to access are allowed in the proxy.
You can use the "Browse Remote" feature to check if the access works. More details are in the Nexus book http://books.sonatype.com/nexus-book/reference/configxn-sect-customizing-server.html

Web Service SOAP server was unable to process request

Hi I'm develping a web app in Java for a local bank and they have a SOAP Web Service that my app consumes. The app is deployed on GlassFish 3.1.2 and the web service was generated on .Net (I don't know the specifics, I'm new to the project) and everything is connected through a peer to peer VPN.
Now the issue I have is when I try to log in I get an EJBException:
javax.faces.el.EvaluationException: javax.ejb.EJBException
Caused by: com.sun.xml.ws.fault.ServerSOAPFaultException: Client received SOAP Fault from server: Server was unable to process request. ---> Changes to this object and its sub-objects have been disabled (Exception from HRESULT: 0x8011042A) Please see the server log to find more detail regarding exact cause of the failure.
Now I'm trying to determine what exactly is the problem with the web service, or even better what should the guys at the bank check to determine what's wrong.
If anyone knows or has some ideas on what we should check please let me know. Thanks
Seems to be server problem. Send them exactly time stamp of request and all the request details, and they will probably guide you to the problem

Java Salesforce Integration Error

I'm trying to connect to salesforce from a java application. I was earlier getting a login error as follows which was resolved by setting the appropriate proxy settings.
com.sforce.ws.ConnectionException: Failed to send request to https://login.salesforce.com/services/Soap/c/29.0
Now, I'm getting the following error:
com.sforce.ws.ConnectionException: Failed to send request to https://ap1.salesforce.com/services/Soap/m/29.0/00D90000000q0ZR
at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:121)
at com.sforce.soap.metadata.MetadataConnection.describeMetadata(MetadataConnection.java:281)
at integration.IntegrationClass.describeMetadata(IntegrationClass.java:80)
at integration.IntegrationClass.main(IntegrationClass.java:26)
Caused by: java.net.ConnectException: Connection refused: connect
Any ideas on how to resolve this error? Thanks!
UPDATE: I tried the code at my home (free from the restrictions of the office firewalls et al :) ) and found that the code ran successfully. Any ideas about changes that I should make to do the same at the company. As I already said, I added the config.setProxy(host, port) which allowed me to successfully log in, but not access the application. I have also enabled proxy from eclipse using Preferences -> General -> Network Connections. What am I missing?
Thanks a lot for your help. Cheers!
Ok, I got the solution and it's kinda silly, but since I didn't spot it anywhere else inspite of seeing similar questions, I'm going to post the solution.
The ConnectorConfig config = new ConnectorConfig(); is used multiple times; in my case, it is first used to login using new EnterpriseConnection(config)).login(username, password); and next to obtain a metadata connection using new MetadataConnection(config);. Since I'm creating 2 ConnectorConfig objects, I would need to use the setProxy method on both, which I...forgot. Hope this solution helps other people having the same problem.
Cheers!

javax.net.ssl.SSLException illegal_parameter bouncycastle related?

I'm trying to upgrade from BouncyCastle bcprov-jdk14-124.jar (oooold) to bcprov-jdk14-143.jar. When I replace the old jar with the new jar and build everything, my software will no longer establish an SSL connection, failing with a javax.net.ssl.SSLException: Received fatal alert: illegal_parameter. Googling for "bouncycastle javax.net.ssl.SSLException illegal_parameter" yields a whopping 4 results.
Any suggestions on where to start debugging this?
Additional context:
client is on WinXP
server on CentOS, using Oracle Application Server
The client is attempting to establish an SSL connection for an AXIS2 POST.
When the server uses bcprov-jdk14-143 and the client uses bcprov-jdk14-124, the POST succeeds, but when the client is upgraded to 143, I get this error
I am a little bit confused about your setup. Your error is from JSSE but BC doesn't provide JSSE. I assume the error is from server, which uses SunJSSE. You probably use BC's TLS API from client to make the TLS connection (check if you have TlsProtocolHandler).
If this is the case, getting everything working is already a miracle on Java 1.4, I wouldn't upgrade anything. Before Java 5, Sun's JSSE is partially hard-wired to SunJCE so you are practically using 2 JCEs at the same time on the server. I played with TLS from BC before and I never got it working so you are way ahead of me :)
Why do you need to upgrade BC? In my opinion, there is no reason to use BC at all if you are on Java 1.4 or later. However, it requires code changes to remove it if you use TlsProtocolHandler.
The specific error is caused by server sending down a list of compression methods. There is no way to get around that. Nobody supports compression but they all send down a list with only Null method.

Categories