http://blog.itpub.net/26687597/viewspace-1207571/
基于Oracle EBS R12,开发了一个Webservice用于返回某项主数据,当请求的数据量非常大的时候(大于6000行的数据量),Oracle应用服务器总是给返回一个500 Internal Server Error。请求数据量小的时候,Webservice运行没有问题,能够正常返回请求数据。
客户端接到的报错:
 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>500 Internal Server Error</TITLE>
</HEAD><BODY>
<H1>Internal Server Error</H1>
The server encountered an internal error or
misconfiguration and was unable to complete
your request.<P>
Please contact the server administrator,
applprod@xxxx.com.cn and inform them of the time the error occurred,
and anything you might have done that may have
caused the error.<P>
More information about this error may be available
in the server error log.<P>
</BODY></HTML> 
 
解决方法
这种问题多是因为数据量太大,应用服务器处理超时,尝试调大Apache的Timeout,就可以解决问题。
 
注意:Oracle EBS的Apache配置参数在$INST_TOP/ora/10.1.3/Apache/Apache/conf下的httpd.conf
(并不是通常意义的Apache配置目录:$ORACLE_HOME/Apache/Apache/conf/httpd.conf)
 
修改Apache配置文件httpd.conf,适当提高Timeout参数(Timeout默认为300秒)
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
 
修改完参数后,需要重启Oracle EBS HTTP Server或者OC4J Service才能生效。
Restart opmn
$ADMIN_SCRIPTS_HOME/adopmnctl.sh stopall
$ADMIN_SCRIPTS_HOME/adopmnctl.sh startall
or
Restart OC4J service
$ADMIN_SCRIPTS_HOME/adoacorectl.sh stop
$ADMIN_SCRIPTS_HOME/adoacorectl.sh start
 
另外,Timeout参数到底需要修改到多少,需要一些测试才能找到边界,Timeout配置处于安全考虑也不要修改的太高,防止DoS Attachs.
The TimeOut directive should be lowered on sites that are subject to DoS attacks. Setting this to as low as a few seconds may be appropriate. As TimeOut is currently used for several different operations, setting it to a low value introduces problems with long running CGI scripts.(Refer:Link)
 
参考
500 Internal Server Error Causes Performance Issues (文档 ID 1389111.1)
Avoiding Worksheet Timeout in Oracle Demand Planning (文档 ID 779590.1)
TimeOut Errors - How To Extend TimeOut For Long Updates In APC/PIM/PLM Pages? (文档 ID 1165573.1)
 
 

EBS Webservice Timeout,HTTP Server Return "500 Internal Server Error"的更多相关文章

  1. 调用 WebService 浏览器提示 500 (Internal Server Error) 的原因及解决办法

    在 ASP.NET 开发中,WebService部署成站点之后,如果在本地测试WebService可以运行,在远程却显示“测试窗体只能用于来自本地计算机的请求”或 者"The test fo ...

  2. 500 : Internal Server Error(jupyter)

    如需转发,请注明出处:小婷儿的python https://www.cnblogs.com/xxtalhr/p/10739036.html 一.报错 jupyter notebook能打开目录页,但是 ...

  3. 在使用pydelicious时出现HTTP Error 500: Internal Server Error的错误的解决方法:

    问题:在学习<集体智慧编程>的过程中,第二章中如果你遇到了pydelicious.PyDeliciousException: HTTP Error 500: Internal Server ...

  4. HTTP Status 500 – Internal Server Error

    明明硬盘中存在users.xml,但是提示:系统找不到指定的路径. 解决办法: 设置String的编码格式 realpath = URLDecoder.decode(realpath, "U ...

  5. 记一次错误 POST http://127.0.0.1:8000/auth/signup/ 500 (Internal Server Error)

    错误环境: 1,ajax 发送 post 请求调用 views 的视图 xfzajax.post({ 'url': '/xfzauth/signup/', 'data': { 'telephone': ...

  6. POST 500 Internal Server Error

    今天调试公司web后台时发现一个POST 500 Internal Server Error的错误. 本来VS本地调试没有发现这个问题,然后发布到服务器时才出现了.然后找了好久没找到什么原因,再仔细在 ...

  7. 解决方案:安装wordpress出现500 Internal Server Error

    做一个资讯站点的时候遇到一个wordpress不知道算不算常见的问题:程序安装的时候提示500 Internal Server Error 那么最终百度谷歌找到以下解决方案: 安装新版本wordpre ...

  8. nginx提示:500 Internal Server Error错误的解决方法

    现在越来越多的站点开始用 Nginx ,("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 ...

  9. 【转】nginx提示:500 Internal Server Error错误的解决方法

    本文转自:http://www.jb51.net/article/35675.htm 现在越来越多的站点开始用 Nginx ,("engine x") 是一个高性能的 HTTP 和 ...

随机推荐

  1. Containerpilot 配置文件 之 Jobs

    ContainerPilot job是用户定义的进程和规则,用于何时执行它,如何进行健康检查,以及如何向Consul做广告. 这些规则旨在允许灵活性覆盖几乎可能要运行的任何类型的进程. 一些可能的jo ...

  2. Ajax 与 jquery

    jquery 里面的ajax用法: $.ajax({ 参数设置: 如果返回数据不是json的时候,记得转化为json . var data = json.parse(data); json 可以直接点 ...

  3. css3自定义placeholder字体颜色

    ::-webkit-input-placeholder{color:#f00;} ::-moz-placeholder{color:#f00;} :-moz-placeholder{color:#f0 ...

  4. Python oct() 函数

    Python oct() 函数  Python 内置函数 描述 oct() 函数将一个整数转换成8进制字符串. 语法 oct 语法: oct(x) 参数说明: x -- 整数. 返回值 返回8进制字符 ...

  5. swift UICollectionView使用

    方法1:创建 的时候注册 layout /// 时间view private lazy var timeCollectionV: UICollectionView = { 1.直接注册 并设置好 UI ...

  6. oracle pl/sql程序

    简单的pl/sql程序 declare begin dbms_output.put_line('hello world'); end; 什么是PL/SQL? pl/sql(Procedure lang ...

  7. 深入php内核,从底层c语言剖析php实现原理

    深入php内核,从底层c语言剖析php实现原理 非常好的电子书:http://www.cunmou.com/phpbook/preface.md   这是它的目录: PHP的生命周期 让我们从SAPI ...

  8. php代码执行顺序

    从上往下,调用类里面的方法,类放上面,调用在下面

  9. wcf服务契约的重载

    a. 服务端 .服务端 契约用OperationContract的Name实现重载 using System; using System.Collections.Generic; using Syst ...

  10. break MISSING_BLOCK_LABEL_160; 看源代码出现的,源代码是反编译的

    break MISSING_BLOCK_LABEL_160; FileNotFoundException fnfe; fnfe; out.close(); throw fnfe; in.close() ...