Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Oracle como importar classes java ausentes ao chamar java de plsql


Você pode tentar CREATE JAVA CLASS :
CREATE OR REPLACE DIRECTORY xml_template_dir
  AS '/path/to/oracle/apps/xdo/oa/schema/server/';
/

CREATE JAVA CLASS USING BFILE (xml_template_dir, 'TemplateHelper.class' )
/

No entanto, embora isso possa carregar a classe, quase certamente terá outras dependências e falhará quando você tentar usar essa classe e precisará carregar essas dependências e, em seguida, as dependências de dependências e assim por diante ...

Seria melhor encontrar um JAR contendo o pacote inteiro (ou crie você mesmo o pacote a partir de sua estrutura de diretórios existente) e use loadjava :
loadjava -user APPS/[email protected] -resolve XML_Publisher.jar

(Se você precisar sobrescrever classes existentes que falharam ao carregar, então você pode precisar do -force opção também.)

Você pode então testar para ver se algo falhou ao carregar usando:
SELECT object_name
FROM   user_objects
WHERE  object_type = 'JAVA CLASS'
AND    status != 'VALID';

Observe também que apenas porque a classe foi carregada com êxito não significa que ela não gerará exceções de tempo de execução quando você invocar a classe.