我覺得這不是jax-rs
的限制。它受限於jetty
。 我修改了它的JettyHttpServer.class中的dubbox
。
public static final String JETTY_HEADERBUFFERSIZE = "dubbo.jetty.headerBufferSize";
public static final String JETTY_REQUESTBUFFERSIZE = "dubbo.jetty.requestBufferSize";
public static final String JETTY_RESPONSEBUFFERSIZE = "dubbo.jetty.responseBufferSize";
/**
* you can set this values by -D when you start jvm
* for example : -Ddubbo.jetty.headerBufferSize=32768 (32 * 1024 = 32768)
* default values:
* _headerBufferSize=4*1024;
* _requestBufferSize=8*1024;
* _responseBufferSize=24*1024;
*/
SelectChannelConnector connector = new SelectChannelConnector();
String headerBufferSize = System.getProperty(JETTY_HEADERBUFFERSIZE);
if (headerBufferSize!=null && !headerBufferSize.isEmpty()){
logger.info("YOU CONFIGED THE JETTY_HEADERBUFFERSIZE:"+headerBufferSize);
connector.setHeaderBufferSize(Integer.parseInt(headerBufferSize));
}
String requestBufferSize = System.getProperty(JETTY_REQUESTBUFFERSIZE);
if (requestBufferSize!=null && !requestBufferSize.isEmpty()){
logger.info("YOU CONFIGED THE JETTY_REQUESTBUFFERSIZE:"+requestBufferSize);
connector.setRequestBufferSize(Integer.parseInt(requestBufferSize));
}
String responseBufferSize = System.getProperty(JETTY_RESPONSEBUFFERSIZE);
if (responseBufferSize!=null && !responseBufferSize.isEmpty()){
logger.info("YOU CONFIGED THE JETTY_RESPONSEBUFFERSIZE:"+responseBufferSize);
connector.setResponseBufferSize(Integer.parseInt(responseBufferSize));
}
server = new Server();
server.addConnector(connector);
如果您只使用jetty或tomcat,也可以通過xml或代碼配置參數;
添加一些東西,我不能把xml放在帖子正文中。我們必須將其放入網址中,這是其他公司的要求 –
url的大小有限制。看看這個:http://stackoverflow.com/questions/417142/what-is-the-maximum-length-of-a-url-in-different-browsers –
告訴他們這個需求應該改變,因爲它可以技術上可能工作。就像他們要求一輛帶方輪的汽車一樣。 –