使用 CN1 Web 服务向导,我创建了一个在本地 Tomcat 安装上运行的工作服务器项目。 此外,CN1 项目还具有 WebserviceProxy.java 类,我用它来调用 Web 服务。 到目前为止一切顺利。
在开发过程中,现在需要在 Web 服务中创建一个我以前没有想到的新功能。因此,我没有使用向导重新创建整个服务器,而是认为我只是在创建的文件中添加了一些代码。
在客户端:
WebServiceProxy.java - 添加 WebServiceProxyCall.WSDefinition 并以同步和异步方式添加函数调用。 参数和返回类型与定义匹配。
在服务器端:
WebServiceProxyServer.java - 添加具有所需功能的函数定义(这工作,因为我在服务器端本地调试了它(。
CN1WebServiceServlet.java - 添加定义并添加与服务名称匹配的 if 语句。
调试服务器并从客户端调用服务时,它没有到达 doPost 方法的断点,因此有些东西非常不对劲。
手动添加新的 Web 服务函数时,还需要更改哪些内容?或者这太复杂了,以至于我应该更好地使用 Web 服务向导,从头开始创建新服务器并将所有其他功能从旧服务器复制到新服务器?
感谢和最诚挚的问候
目前没有办法无缝地做到这一点,因为生成的协议是二进制的,以实现最快的协议性能。
解决方案是生成一个新类,我们通常使用概念V2,V3开始。这样,第一个 Web 服务仍然与生产中的设备 100% 兼容,您可以为较新的设备创建新的"更正确"协议。实现类可以相互派生,以提高代码重用率。