Category Archives: Troubleshooting

Quicktipp: WebLogic Server 12c and BEA-101104: java.net.ProtocolException

The issue ist reported newly as a Bug from Oracle…

Technology, KeyWords:

WebLogic Server 12.1.3.0.0., 10.3, Exception; java.net.ProtocolException

Error Message: <BEA-101104> <Servlet execution in servlet context…>

Problem:

We have deployed our application on weblogic (12.1.3.0.0). In the deployed application there is a (or more) link(s) which executes an application jar. The Links are not available in browser and if we check log-files of WLS-Domain, we find the following error:

####… <Error> <HTTP> <$Host> <$ManagedServer> <[ACTIVE] ExecuteThread: ’12’ for queue: ‘weblogic.kernel.Default (self-tuning)’> <<WLS Kernel>> <> <> … <BEA-101104> <Servlet execution in servlet context “ServletContext@1754863796[app:myApp module:/myModule path:null spec-version:3.0]” failed, java.net.ProtocolException: Didn’t meet stated Content-Length, wrote: ‘0’ bytes instead of stated: ‘-1’ bytes..

java.net.ProtocolException: Didn’t meet stated Content-Length, wrote: ‘0’ bytes instead of stated: ‘-1’ bytes.  at weblogic.servlet.internal.ServletOutputStreamImpl.ensureContentLength(ServletOutputStreamImpl.java:481)            at weblogic.servlet.internal.ServletResponseImpl.ensureContentLength(ServletResponseImpl.java:1549)            at  Weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1623)    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1582)   at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255)            at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)            at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)

Description

Weblogic declaration from:https://docs.oracle.com/cd/E17904_01/apirefs.1111/e14397/HTTP.html

BEA-101104

Error: Servlet execution in servlet context “ctx0” failed, t1.

Description  Servlet execution in servlet context “ctx0” failed, t1.

 Cause  Unexpected error occurred while serving the request. This is not a simple client connection reset error.

Action  Check the error message for the exact cause.

 But further analysis and newly reported Bug from Oracle help to solve this issue.

More detail and Background information:  Regarding the <Error> <HTTP> … <BEA-101104> <Servlet execution in servlet context…>

There is newly the Bug-Fix (Patch 20446229) available. Perhaps help you.

Solution

The Bug is reported in the following document:

Bug 20446229 : BEA-101104 JAVA.NET.PROTOCOLEXCEPTION TRYING TO ACCESS JAVAWEBSTART RESOURCE

Please go simply to “Patches and Updates” on the Oracle Support Portal and search for patch number 20446229. The Patch is available for 10.3.6 and 12.1.3.0.0

Refernces

MOS: BEA-101104 Java.net.ProtocolException While Downloading And Executing Webstart Resource (Doc ID 1988048.1)

Advertisements

Do you forget your WebLogic Server password? No problem!

Do you forget your WebLogic Server password? No problem!

It is a frequently question that I receive from time to time: “I’ve lost my password, how can I change the AdminServer Password in WebLogic Server?”  In addition, normally administrators want to change the WLS password regularly, because security policy. I try to make it easy, but please try it first in a test environment! Make a Backup from your domain and do the following steps for WebLogic Server 11g and/or 12c:

1-       Check your Middleware-Home’s ($MW_HOME) and WLS-Domain-Home’s ($DOMAIN_HOME) paths. You can set up the environments under Linux with export command, e.g.:

$>export MW_HOME=/u01/app/oracle/middleware

$>export DOMAIN_HOME=$MW_HOME/user_projects/domains/MyDomain

2-      shut down the WebLogic domain, e.g. $DOMAIN_HOME/bin/stopWebLogic.sh

3-      Rename the data folder in $DOMAIN_HOME/servers/AdminServer/data

4-      set the environment variables with using, e.g.: $DOMAIN_HOME/bin/setDomainEnv.sh

### Now is the main command that you can change AdminServer’s password:

$> cd $DOMAIN_HOME/security

$> java weblogic.security.utils.AdminAccount <username> <NEWpassword> .

# Create and/or update “boot.properties” in “$DOMAIN_HOME/servers/AdminServer/security/ directory with your username and NEWpassword:

username=<username>

password=<NEWpassword>

# Start the WebLogic domain.

$ $DOMAIN_HOME/bin/startWebLogic.sh

Refernces:

BEA-003108: Unicast receive error: java.io.EOFException

One Thousand and One Solutions for Oracle Fusion Middleware

BEA-003108: Unicast receive error: java.io.EOFException

One Thousand and One Solutions for Oracle Fusion Middleware is a series of articles about my experiences with different technologies in Oracle Fusion Middleware (OFM) area. In the articles of One Thousand and One Solutions for OFM, I try to summarize one exact issue and then present a solution that can help you. Moreover, I introduce you to available references regarding the issue. You can study them on your own whenever you have a little bit of time.

Technology, KeyWords:

WebLogic Server 10.3, Cluster, Unicast, Exception;JAVA.IO.EOFEXCEPTION

Error Message:

<BEA-003108> <Unicast receive error : java.io.EOFException” >

Problem:

If I restart one Managed Server in a Cluster, I get the following error:

<Error> <Cluster> <BEA-003108> <Unicast receive error : java.io.EOFException

java.io.EOFException

at java.io.DataInputStream.readFully(DataInputStream.java:180)

at java.io.DataInputStream.readLong(DataInputStream.java:399)

at java.io.ObjectInputStream$BlockDataInputStream.readLong(ObjectInputStream.java:2799)

at java.io.ObjectInputStream.readLong(ObjectInputStream.java:960)

at weblogic.cluster.HeartbeatMessage.readExternal(HeartbeatMessage.java:55)

Truncated. see log file for complete stacktrace>

Description

Weblogic declaration from: http://docs.oracle.com/cd/E17904_01/apirefs.1111/e14397/ClusterExtension.html

<BEA-003108> <Unicast receive error : java.io.EOFException”

Error: Unicast receive error: e

An error occurred while trying to receive a message over the cluster broadcast.

Cause

An error occurred while trying to receive a message over the cluster broadcast.

Action

Make sure that the NIC is functioning properly. If you believe there no environment problems exist, contact Oracle Customer Support and provide the stack trace for further analysis.

More detail and Background information:

Note: Sometimes you get Error Message: <BEA-002616> <Failed to listen on channel “Default”…> and it can be a logical effect of error BEA-003108.

The issue ” <BEA-003108> <Unicast receive error : java.io.EOFException”  occurs when using a Unicast cluster and when the cluster debug flags DebugCluster and/or DebugClusterHeartBeats are turned on for some of the managed servers, but not all of them.

The issue also occurs when the debug flags are turned on for the servers that existed previously in the cluster but not on servers which are newly added.

Solution

To resolve this issue, the cluster debug flags need to be enabled consistently: either disabled on all the servers of the cluster or enabled on all of them. In a production environment, debugging should be disabled. Cluster debug flags should be enabled only while debugging a problem with the Unicast cluster.

Solution via AdminServer

Click on Domain Structure and select your Server:

2_3108_1

Select debugging tab: 2_3108_2

Select items, that you want to disable or/enable, e.g. Disable weblogic debugging by click on „disable“(german: „deaktivieren“):

2_3108_3

Check Log files, wether the issue is solved.

Refernces