Glassfish Server 4发布了太大的错误

时间:2013-11-22 09:45:48

标签: configuration http-post glassfish-4

我在调用使用http post编码的Web服务时遇到GF4问题。 GF4以“Post too large”错误响应。我的帖子数据大约是3MB。

这是GF4调试日志:

WARNING:   Post too large
WARNING:   StandardWrapperValve[obx2oex]: Servlet.service() for servlet obx2oex threw exception
java.lang.IllegalStateException: Post too large
    at org.glassfish.grizzly.http.server.Request.parseRequestParameters(Request.java:2024)
    at org.glassfish.grizzly.http.server.Request.getParameter(Request.java:1052)
    at org.apache.catalina.connector.Request.getParameter(Request.java:1547)
    at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:448)
...

我已经针对此问题进行了Google搜索,并找到了一些鼓励修改服务器配置的帮助。我在domain.xml中编辑了以下部分:

<http-service>
        <access-log></access-log>
        <virtual-server id="server" network-listeners="http-listener-1,http-listener-2"></virtual-server>
        <virtual-server id="__asadmin" network-listeners="admin-listener"></virtual-server>
        <property name="maxPostSize" value="2097152"></property>
</http-service>

并重新启动服务器。但错误仍然存​​在。

有谁知道,如何解决这个“过大”的问题? 谢谢你的帮助!

PS:我刚看到GF4的起始日志,它告诉我:

  

警告:忽略不支持的http服务属性maxPostSize

那么我应该在哪里告诉GF4接受大量的帖子数据?

2 个答案:

答案 0 :(得分:6)

打开Glass Fish管理控制台,选择

  

配置 - 服务器配置 - 网络配置 - 网络侦听器    - http-listener-1

  

标签HTTP。

参数最大帖子大小。根据需要增加它。 Look screenshot

答案 1 :(得分:0)

我的第一次尝试编写我的webservice是一个servlet,它通过HTTP的POST参数接受数据。当发送超过2MB时,这会导致“Post too large”错误。

我收到了将其编码为REST服务的建议。这很奇怪,但现在它的工作量超过2MB。即使数据是通过http post发送的。

也许它应该帮助别人。

但是我想知道,你可以在GF4服务器中设置maxPostSize值。