WebService系列:问题处理(Troubleshooting)
二月 14, 2009 in Oracle 融合中间件
WebService系列讲解PLSQL Web Service + OC4J 开发过程中遇到很多的问题,本文将一些常见的问题进行整理,以备后续查阅
这些问题的解决方案不一定是唯一的解决方法,参考的过程中请根据实际情况进行比较的筛选
1,OC4J运行Web Service:Missing <wsse:Security> in SOAP Header
原因:SOAP头中没有包括安全验证的信息,需要为请求的消息提供SOAP头信息
解决方案:实现IHeaderHandler接口的类,并赋给Soapclient30的实例;如果使用OC4J测试界面,选择必须的选项,让它包括头信息
2,VBA代理程序报错:解析SOAP头失败
背景:已经实现了IHeaderHandler接口,并赋给了Soapclient30的实例,同时OC4J服务器端没有报出任何错误,但是VBA代理程序报错:解析SOAP头失败
我遇到的原因:IHeaderHandler接口的实现类中IHeaderHandler_ReadHeader和IHeaderHandler_WillWriteHeaders函数没有返回True
解决方案:修改IHeaderHandler_ReadHeader和IHeaderHandler_WillWriteHeaders方法的返回值为True
3,OC4J运行Web Service:返回自定义Table类型报OWS-04005错误
原因:由于在JDeveloper中发布Web Services的时候没有包括自定义类型的实现类
解决方案:重新发布,选择需要的Java Class文件
4,PLSQL:传入Table参数多出一行空行
问题描述:传入的Table类型参数,传到PL/SQL端后,由于序列化的缘故,它会自动在Table后面添加一行空的记录因此在进行PL/SQL处理的时候,需要将Count减1。
否则很有可能报出不能插入Null的错误,当然这样的错误很有可能也是程序中没有提供必要的值,需要进行仔细的检查
解决方案:PLSQL程序中将PLSQL 记录表变量的数量减1
5,OC4J运行Web Service:Policy requires nonce
错误信息如下:ERROR OWS-04005 An error occurred for port: xxxx: oracle.j2ee.ws.common.soap.fault.SOAP11FaultException: Policy requires nonce.
原因:添加安全验证信息的时候有一个选项没有去掉(Nonce Required in Token/标记中所需的现时)
解决方案:修改Web Services的安全验证设置后重新发布或者在OC4J上面修改选项
6,OC4J运行Web Service:The security token could not be authenticated or authorized
原因:提供的安全验证用户名或者密码不正确,这个错误信息不属于程序的错误
解决方案:提供正确的信息,如果无法解决请找OC4J管理员协助
以上是我在实际的开发过程中遇到的一些关键问题!!!
–
相关文章:
wind.yang said on 二月 15, 2009
偶然看到,上来学习学习,恭喜恭喜
wade said on 二月 15, 2009
恭喜开张,好多看不懂啊