Tags

, , , , , ,

A very common error that occurs on WebLogic Application Servers is the weblogic.socket.MaxMessageSizeExceededException as example below:

weblogic.socket.MaxMessageSizeExceededException: Incoming message of size: 10000080 bytes exceeds
the configured maximum of: 10000000 bytes for protocol:t3

This error occurs for example if the MessagesMaximum parameter has a value of 10 million (10 million) or 10MB, and the total number of JMS messages or own JAR file is too large and passes this value in the example above is receiving 10,000,080 bytes.

But we must be vigilant as adjust this value too high can have a problem also in the use of server memory, since the first consumer client to connect will get all the messages that have reached the destination. This condition leaves other consumers without any message and creates an unnecessary backlog of messages

You may need to configure WebLogic clients, in addition to WebLogic Server instances, to send and receive large messages.

For most protocols, including T3, WLS limits the size of a message to 10MB by default. If the individual sizes of JMS messages exceeds this limit, or a set of JMS messages that are grouped on the same network call exceeds this limit, this can lead to a “very large package of exceptions” and / or paralyzed consumers.

To set the maximum message size on a server instance, we must set the maximum message size for each protocol supported on a per protocol standard for each channel involved or custom channel. In this context, the word “message” refers to all calls on the network specific protocol, and not only the JMS calls.

To set the maximum message size on a client, use the following property command line:

-Dweblogic.MaxMessageSize

Note: This setting applies to all WebLogic Server network packets delivered to the customer, not just JMS related packages.

The maximum message size helps protect against a denial of service attack in which a caller attempts to force the server to allocate more memory than is available thereby helps the server to respond quickly to other requests.

Minimum Value: 4096
Maximum Value: 2000000000
Insurance Value: 10000000

To accomplish this change do the following:

In your browser go to http://localhost:10000/console

Note: The port 10000 is the number that I chose to create my Domain.

Login:

Imagem Blog UansCarvalho

In Environment click Servers

Imagem Blog UansCarvalho

Click AdminServer(admin)

Imagem Blog UansCarvalho

Click Protocols and change the value in Maximum Message Size:

Imagem Blog UansCarvalho

See above I’m putting the value to 2000000000

Then click Save to activate the changes.

Hugs and to the Next

 

/:-D