我有简单的java类来计算SHA1,我想从Oracle中的PLSQL过程中使用它。
以下建议来自:
SHA1, SHA256, SHA512 in Oracle for free without using DBMS_CRYPTO
(我的简单情况使用单独的SHA1,不需要任何jar,只包含导入java.security和java.io的sha1.class)
我编译了sha1.java:
javac -target 1.2 -source 1.2 sha1.java并在我的Windows测试环境中安装了这个sha1.class:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production不幸的是,我必须在Solaris上安装它:
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production我尝试过,但这些尝试失败:
c:\test>loadjava -thin -user ***** -resolve sha1.class
Error while creating class sha1
ORA-29545: badly formed class:: User has attempted to load a class (sha1) into a restricted package. Permission can be granted using dbms_java
.grant_permission(, LoadClassInPackage...
The following operations failed
class sha1: creation
exiting : Failures occurred during processing
编辑:
我尝试使用.java源代替.class,并得到(从波兰语翻译)::
c:\mn>loadjava -thin -user ****** -resolve sha1.java
Error while creating sha1
ORA-06576: not a valid function or procedure name
Error while computing shortname of sha1
ORA-06550: line 1, column 13:
PLS-00201: must be declared 'DBMS_JAVA.SHORTNAME' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
The following operations failed
source sha1: creation
exiting : Failures occurred during processing我应该如何将这个类或源加载到Solaris上的Oracle?