Oracle 访问ibm mobilefirst中存储的进程时出错
我正在尝试使用包中编写的存储过程,但无法访问: 运行时:无法使用过程检索数据: XXMOB\u登录\u AN.LOGIN\u中华人民共和国 在适配器JS中:Oracle 访问ibm mobilefirst中存储的进程时出错,oracle,ibm-mobilefirst,mobilefirst-adapters,Oracle,Ibm Mobilefirst,Mobilefirst Adapters,我正在尝试使用包中编写的存储过程,但无法访问: 运行时:无法使用过程检索数据: XXMOB\u登录\u AN.LOGIN\u中华人民共和国 在适配器JS中: function procedure2(p_usrname,p_password) { return WL.Server.invokeSQLStoredProcedure({ procedure : "XXMOB_LOGIN_AN.login_prc", parameters : [] });
function procedure2(p_usrname,p_password) {
return WL.Server.invokeSQLStoredProcedure({
procedure : "XXMOB_LOGIN_AN.login_prc",
parameters : []
});
}
程序如下:
create or replace PACKAGE XXMOB_LOGIN_AN AUTHID CURRENT_USER AS
Procedure login_prc (
p_usrname IN VARCHAR2,
p_password IN VARCHAR2,
p_person_id OUT VARCHAR2,
p_groups_id OUT VARCHAR2,
p_person_login OUT VARCHAR2,
p_person_role OUT VARCHAR2,
p_user_id OUT VARCHAR2,
p_welcome OUT VARCHAR2,
p_return OUT VARCHAR2,
P_return_message out varchar2
);
END XXMOB_LOGIN_AN;
在适配器XML中:
<?xml version="1.0" encoding="UTF-8"?>
<wl:adapter name="strprc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wl="http://www.ibm.com/mfp/integration"
xmlns:sql="http://www.ibm.com/mfp/integration/sql">
<displayName>strprc</displayName>
<description>strprc</description>
<connectivity>
<connectionPolicy xsi:type="sql:SQLConnectionPolicy">
<!-- Example for using a JNDI data source, replace with actual data source name -->
<!-- <dataSourceJNDIName>java:/data-source-jndi-name</dataSourceJNDIName> -->
<!-- Example for using MySQL connector, do not forget to put the MySQL connector library in the project's lib folder -->
<dataSourceDefinition>
<driverClass>oracle.jdbc.driver.OracleDriver</driverClass>
<url>jdbc:oracle:thin:@</url>
<user>***</user>
<password>***</password>
</dataSourceDefinition>
</connectionPolicy>
</connectivity>
<!-- Replace this with appropriate procedures -->
<procedure name="procedure2"/>
</wl:adapter>
STRPC
STRPC
oracle.jdbc.driver.OracleDriver
jdbc:oracle:thin:@
***
***
如注释中所述,Worklight不支持SQL适配器中的out
参数。见这个问题:
我链接到您的问题还包含一个答案,如果您希望尝试它(基本上,覆盖Worklight并用Java代码实现它),它提供了一个详细的解决方法。在浏览器的预览中运行您的应用程序,chrome devtools控制台打开-当过程调用失败时,您会看到什么错误?(您可能需要刷新屏幕)我最初正在测试后端适配器,因此我没有编写任何客户端代码,因此它可能是您尝试连接到的后端的地址。是的,我正在尝试连接后端数据库,而且连接中也没有问题,因为之前我处理过正常的sql查询。它工作得很好。我正在尝试使用存储的sql过程从适配器连接到数据库。这可能是相关的吗?不支持“输出”: