十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1.创建Product Family
成都创新互联公司是专业的南通网站建设公司,南通接单;提供网站建设、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行南通网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
Product Family用于管理几个功能相近的Product(也可以立即为模块),统一管理客户化的Webservice接口
begin
-- Call the procedure
ad_pa_insert_package.insert_ad_pm_product_info(x_product_abbreviation = 'os_xxx',
x_pseudo_product_flag = 'N',
x_product_family_flag = 'Y',
x_application_short_name = NULL,
x_product_name = 'Oracle Xxx Suite',
x_product_family_abbreviation = NULL,
x_product_family_name = NULL,
x_aru_update_date = to_char(SYSDATE,'yyyy-mm-dd
hh24:mi:ss'),
x_currdate = to_char(SYSDATE,'yyyy-mm-dd
hh24:mi:ss'),
x_last_updated_by = -1,
x_created_by = -1);
COMMIT;
end;
2.注册Product,即注册Xxx University(cux)应用到产品家族中
begin
ad_pa_insert_package.insert_ad_pm_product_info(x_product_abbreviation = 'cux',
x_pseudo_product_flag = 'N',
x_product_family_flag = 'N',
x_application_short_name = 'CUX',
x_product_name = 'Xxx University',
x_product_family_abbreviation = NULL,
x_product_family_name = NULL,
x_aru_update_date = to_char(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_currdate = to_char(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_last_updated_by = -1,
x_created_by = -1);
COMMIT;
end;
3.关联Xxx University应用到产品家族Oracle Xxx Suite下
begin
-- Call the procedure
ad_pa_insert_package.insert_ad_pm_prod_family_map(x_product_abbreviation = 'cux',
x_product_family_abbreviation = 'os_xxx',
x_aru_update_date = TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_currdate = TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss'),
x_last_updated_by = -1,
x_created_by = -1);
COMMIT;
end;
4.增加一个BUSINESS_ENTITY的lookup code(应用开发员职责-应用产品 - 代码-Oracle Application Object),这个Lookup会用在下
一步的API中的@rep:category BUSINESS_ENTITY
这里增加的code为ORACLESEEKER
5.编写PL/SQL API Specification
CREATE OR REPLACE PACKAGE CUX_SUPPLIER_PKG AS
/* $Header: $ */
/*#
* This package using maintain the supplier information
* @rep:scope public
* @reproduct CUX
* @rep:lifecycle active
* @rep:displayname Supplier Approve result
* @rep:compatibility S
* @rep:category BUSINESS_ENTITY ORACLESEEKER
*/
/*#
* insert approve result
* @param apply_id apply id
* @param node_id node id
* @param node_name node name
* @param approver_id approver id
* @param approver_name approver name
* @param approve_result approve result
* @param approve_opinion approve opinion
* @param approve_date approve date
* @return a varchar
* @rep:scope public
* @rep:lifecycle active
* @rep:displayname insert supplier approve result Webservice
*/
FUNCTION f_insert_approve_result(apply_id IN NUMBER,
node_id IN NUMBER,
node_name IN VARCHAR2,
approver_id IN NUMBER,
approver_name IN VARCHAR2,
approve_result IN NUMBER,
approve_opinion IN VARCHAR2,
approve_date IN DATE) RETURN VARCHAR2;
END CUX_SUPPLIER_PKG;
需要注意Package中的注释并不是随便填写的,每一个注释都会对应到Oracle Integration Repositoy接口的说明上去,对于要注册成
Webservice的PL/SQL API必须按照要求来填写。
注释标签具体的含义需要参考《Oracle E-Business Suite Integrated SOA Gateway Developer's Guide》
6.验证PLSQL接口文件,并生成ildt文件
将编写好的PLSQL声明定义保存为.pls文件(PAUL_ITEM_PKG.pls),并将其上传到服务器应用$CUX_TOP/patch/115/sql目录下,然后执行下
边的命令生成ildt文件
/usr/bin/perl $FND_TOP/bin/irep_parser.pl -g -v -username=sysadmin
cuxatch/115/sql:CUX_SUPPLIER_PKG.pls:12.0=CUX_SUPPLIER_PKG.pls
7.将iLDT文件上传到Oracle Integration Repositoy
FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/wfirep.lct CUX_SUPPLIER_PKG_pls.ildt
8.在对应的Product Family和Product下就能看到你的接口
9.在Web服务调用的时候,需要有一个应用数据库用户来连接EBS数据库,因此需要创建一个具备一定权限的用户,而为了简化设置的麻烦
,Oracle提供了一个内建的用户 ASADMIN ,只要启用它并重置密码就可以了。
以sysadmin登录Oracle EBS,切换到 User Management 职责,进入Users页面,查找出asadmin用户,通过修改密码的方式激活asadmin,
并确保此用户拥有Apps Schema Connect Role职责。
由于asadmin的密码已经被重置,因此中间服务器的文件配置$INST_TOP/ora/10.1.3/j2ee/oafm/config/system-jazn-data.xml 中对应的
密码也需要修改,由于配置中的密码已被加密,我们无法提供加密后的密码,使用过OC4J的同事应该都知道,Oracle提供了一种重置这里
密码的方便方法,就是采用明文密码,在密码前添加一个警号(!),然后重启应用服务器后自动会重新加密。打开system-jazn-data.xml
文件后, 找到
user
nameASADMIN/name
display-nameDefault Apps SOA User/display-name
descriptionUsed by SOAProvider for DB connection/description
credentials{903}qMgAeO1AjQjwOJ6rIB41Sx049uG0xzhs/credentials
/user
只要将credentials的值更改为自己的密码,如我的密码设置为11111,就设置为 credentials!11111/credentials。修改完成后重启
oamf,简单的方法就是重启Oracle EBS应用服务。
附重启命令:
cd $INST_TOP/admin/scripts
01、关闭应用 sh adstpall.sh apps/apps
02、重启应用 sh adstrtal.sh apps/apps
03、关闭DB
04、重启DB
05、启动并发管理器 adcmctl.sh start apps/apps
10.为集成接口创建授权
发布到Oracle Integration Repositoy中的Web服务能够被访问必须有相应的权限才可以,这也是受到AOL安全模型限制的一个体现。
登录EBS后切换到Integrated SOA Gateway职责,在 Integration Repositoy 中找出已经上传好的客户化集成接口,选择接口过程和方法
后点击Create Grant 按钮
选择授权类型:All Users、Group of Users 和 Specific USer,下面设置为最后一种方式
11.完成以上工作后,点击Generate WSDL按钮来生成集成接口对应的Web服务WSDL信息
成功完成后可以看到如下Web服务的状态为:Generated
点击 Deploy 按钮来发布Web服务到中间服务器中,发布后Web服务的状态为: Deployed
-----------------------------------------------
12.如果在测试中报java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: For input
string: ""
执行以下操作:
cd $ORA_CONFIG_HOME/10.1.3/j2ee/forms/config/oc4j.properties
注释代理服务
#http.proxyHost=
#http.proxyPort=
重启服务
13.如果填写信息提交后会报出 wsse:FailedAuthentication 这样的错误信息,这是由于提交的Soap消息中并没有包括Oracle
Integration Repository要求的AOL安全认证,即没有Oracle EBS系统要求的用户、职责、安全组和语言信息,也就是没有进行Oracle
EBS的环境初始化
wsdl文件路径/ebsr12/test/inst/apps/TEST_scmdev/soa/PLSQL/4343
此问题可以通过修改wsdl文件来解决
01删除CUX_SUPPLIER_PKG_soap.wsdl中
element name="SOAHeader"
complexType
sequence
element name="Responsibility" minOccurs="0" type="string"/
element name="RespApplication" minOccurs="0" type="string"/
element name="SecurityGroup" minOccurs="0" type="string"/
element name="NLSLanguage" minOccurs="0" type="string"/
element name="Org_Id" minOccurs="0" type="string"/
/sequence
/complexType
/element
02删除CUX_SUPPLIER_PKG_soap_http.wsdl中
element name="SOAHeader"
complexType
sequence
element name="Responsibility" minOccurs="0" type="string"/
element name="RespApplication" minOccurs="0" type="string"/
element name="SecurityGroup" minOccurs="0" type="string"/
element name="NLSLanguage" minOccurs="0" type="string"/
element name="Org_Id" minOccurs="0" type="string"/
/sequence
/complexType
/element
修改后点击invoke,如出现“处理服务时出错”,进行如下处理
/ebsr12/test/inst/apps/TEST_scmdev/soa/PLSQL/4343/F_INSERT_APPROVE_RESULT.wsdl
查看这个文件的内容
jcaperation
PackageName=”ORACLESEEKER_DEPT_PKG”
ProcedureName=”ADD_DEPARTMENT”
IRepInternalName=”PLSQL:ORACLESEEKER_DEPT_PKG:ADD_DEPARTMENT”
IRepOverloadSeq=”1〃
InteractionSpec=”oracle.tip.adapter.apps.AppsStoredProcedureInteractionSpec”
/jcaperation
你所说的网页版其实是oracle的企业管理器EM
通过浏览器登入
http://主机名(或者ip地址):1158/em
意思就是连到ip地址下的那台机器
,那台机器肯定要装oracle,并且服务要起
而你的机器就不用装oralce了
步骤1:打开企业管理器,如下。
步骤2:选择数据库,安全性,点击新建链接服务器。
步骤3:选择链接服务器属性,常规,输入名称:TEST,选择ORACLE数据库提供程序,输入名称、数据源。
步骤4:进行安全性设置。本地登录,选择SQLServer数据库登录用户,远程登录用户和密码,输入远程连接数据库的用户和密码,选择用此安全上下文进行,输入远程登录用户和密码。
5
步骤5:点击TEST链接服务器下的表,我们可以访问ORACLE数据库的表了。
注意:产品名称要和所链接的服务器相对应,使用ORACLE数据库就要输入ORACLE,使用SQLServer就输入SQLServer。
直接打开网页127.0.0.1:XX XX代表你的数据库对外访问的开放端口
直接登陆这个地址可以用WEB形式打开数据
前提是 你的数据库已经开启 WEB管理方式
望采纳 给个最佳答案 谢谢
1、命令获取法以root用户登录系统后,执行‘sqlplus / as sysdba’回车,这个时候可以看到oracle数据库的版本。
2、工具获取法,以plsql developer为例。登录成功后,输入‘select * from v$version’,点击执行。
在查询结果里即可看到版本信息:
用PHP吧,和Linux搭配比较好。具体的我不会,你再问别人吧。
在Linux上安装PHP,Apache,Apache是页面服务器,PHP是php脚本解释器。
写一个php脚本,里面连接上你的oracle数据,并把数据显示出来。
其他人直接访问这个页面就OK了。
PHP怎么配置,
PHP脚本怎么写
写好了怎么测试、调试。你再问其他人好了。
当然,用JSP也是可以的,不过…………总觉得linux上装Java不舒服。
何况现在PHP也支持Oracle了,所以,还是推荐使用PHP脚本。