Oracle EM错误,java.lang.Exception: Exception in sending Request :: null

本文介绍了解决Oracle企业管理器(EM)中因时区设置不当导致的java.lang.Exception错误的方法。通过修改$ORACLE_HOMEdb_1$HOSTNAMEsysmanconfigemd.properties文件中的agentTZRegion值,并重启dbconsole服务来解决问题。

操作系统:Win7 64bit
Oracle: 10.2.0.1.0

很久没有使用EM了,打开一看,居然报错了,出现java.lang.Exception: Exception in sending Request :: null错误
这里写图片描述

除了主目录菜单之外,其他的菜单点击之后都会跳转到重新登录的页面……

解决方案:找到下面的文件
$ORACLE_HOME\db_1\$HOSTNAME\sysman\config\emd.properties

其中的agentTZRegion缺省是GMT,改为本机的时区即可,例如:
agentTZRegion=Asia/Chungking

关于时区的列表参考:10.2.0\db_1\sysman\admin\supportedtzs.lst
或者执行sql查询

select * from v$timezone_names

然后先停止 dbconsole 使时区设置生效并重启OracleDBConsole:
emctl stop dbconsole
emctl resetTZ agent
emctl config agent getTZ
emctl start dbconsole

这是网上搜罗的解决办法,在实际使用的时候可能会遇到以下问题:
1、提示没有环境变量ORACLE_SID
解决办法:增加环境变量ORACLE_SID,一般都为ORCL,如果不是请修改之

2、emd.properties文件中的时区最后又变成了缺省的GMT
解决办法:人工修改时区之后,不要再执行emctl resetTZ agent和emctl config agent getTZ命令

3、重启OracleDBConsole之后问题依然存在
解决办法:不妨重启一下机器吧~

Python 3.8.19 (default, Mar 20 2024, 19:58:24) [GCC 11.2.0] :: Anaconda, Inc. on linux Type "help", "copyright", "credits" or "license" for more information. Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/fs/FSDataInputStream at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:669) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:651) Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.fs.FSDataInputStream at java.net.URLClassLoader.findClass(URLClassLoader.java:387) at java.lang.ClassLoader.loadClass(ClassLoader.java:418) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 7 more Traceback (most recent call last): File "/usr/local/spark/python/pyspark/shell.py", line 66, in <module> SparkContext._ensure_initialized() File "/usr/local/spark/python/pyspark/context.py", line 432, in _ensure_initialized SparkContext._gateway = gateway or launch_gateway(conf) File "/usr/local/spark/python/pyspark/java_gateway.py", line 106, in launch_gateway raise RuntimeError("Java gateway process exited before sending its port number") RuntimeError: Java gateway process exited before sending its port number 什么错误
最新发布
10-15
在 Python 3.8.19、Spark 环境下出现 `java.lang.NoClassDefFoundError: org/apache/hadoop/fs/FSDataInputStream` 和 `RuntimeError: Java gateway process exited before sending its port number` 错误,可能有以下原因: ### java.lang.NoClassDefFoundError: org/apache/hadoop/fs/FSDataInputStream 错误原因 - **缺少 Hadoop 依赖库**:当运行程序时,Java 虚拟机(JVM)找不到 `org.apache.hadoop.fs.FSDataInputStream` 类的定义,这可能是因为项目中没有包含 Hadoop 相关的依赖库。例如,在使用 PySpark 时,如果没有正确配置 Hadoop 依赖,就会出现此类问题。 - **类路径配置错误**:即使已经有了 Hadoop 相关的 JAR 文件,但如果类路径没有正确配置,JVM 仍然无法找到这些类。比如手动管理依赖时,没有将 Hadoop 的 JAR 文件添加到类路径中,就会导致类找不到的错误。 - **版本不兼容**:不同版本的 Hadoop 可能存在 API 差异,如果使用的 Hadoop 版本与项目中的其他组件版本不兼容,也可能会导致类找不到的问题。 ### RuntimeError: Java gateway process exited before sending its port number 错误原因 - **Java 环境配置问题**:PySpark 在启动时需要依赖 Java 环境,如果系统中没有正确安装 Java,或者 `JAVA_HOME` 环境变量没有正确设置,就会导致 Java 网关进程启动失败。例如,`JAVA_HOME` 指向的路径错误,PySpark 就无法找到 Java 可执行文件。 - **内存不足**:Java 网关进程启动需要一定的系统内存,如果系统内存不足,可能会导致 Java 网关进程在启动过程中崩溃,从而出现该错误。 - **版本不兼容**:PySpark 与 Java 版本不兼容也可能导致 Java 网关进程启动失败。不同版本的 PySpark 对 Java 版本有不同的要求,如果使用的 Java 版本不符合要求,就会出现问题。 ```python # 示例代码,仅用于说明 PySpark 启动相关,并非解决错误代码 from pyspark.sql import SparkSession spark = SparkSession.builder \ .appName("ExampleApp") \ .getOrCreate() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值