[英]IIS 7.5 hosted web service soap calls return http response
I have a .NET, WCF web service (created in PowerBuilder 12.5.1) hosted on an IIS 7.5 server which has a method call that takes an integer, and then makes a call to a MS SQL Server 2008 R2 database. 我有一个.NET,WCF Web服务(在PowerBuilder 12.5.1中创建)托管在IIS 7.5服务器上,该服务器具有一个采用整数的方法调用,然后对MS SQL Server 2008 R2数据库进行调用。 Using Microsoft Network Monitor 3.4 I can see that my client makes an HTTP request to the IIS server, which sometimes sends an HTTP 100 response and sometimes doesn't (has never been an issue, and in this case I don't care), then the client makes a SOAP request to the server that has the details for the service call.
使用Microsoft Network Monitor 3.4,我可以看到我的客户端向IIS服务器发出了HTTP请求,该服务器有时会发送HTTP 100响应,有时却没有(从来就不是问题,在这种情况下我不在乎),然后客户端向服务器发出SOAP请求,其中包含服务调用的详细信息。 However, the IIS server just sends back an HTTP 200 response, instead of making the SQL call like its supposed to.
但是,IIS服务器只是发送回HTTP 200响应,而不是像预期的那样进行SQL调用。 There is no indication that the service is even attempting to make a connection to the SQL database.
没有迹象表明该服务甚至试图建立与SQL数据库的连接。 Both the IIS site and application that the service is hosted on are using the PBDotnet4AppPool, which is using integrated managed pipeline mode and the NetworkService Identity.
托管该服务的IIS站点和应用程序都使用PBDotnet4AppPool,该PBDotnet4AppPool使用集成的托管管道模式和NetworkService Identity。 The application has a connection string that can be used to connect to the SQL database with a user id that has read access to all the tables on the database.
该应用程序具有一个连接字符串,该字符串可用于使用具有对数据库上所有表的读取访问权限的用户ID连接到SQL数据库。
How can I fix this so that the service makes the SQL call and returns the proper response? 如何解决此问题,以便服务进行SQL调用并返回正确的响应? Any help is greatly appreciated.
任何帮助是极大的赞赏。
PS: I'm new at this, please be patient and let me know if there is some other information I should have included. PS:我是新来的,请耐心等待,如果我还有其他信息,请告诉我。
It turns out the whole thing was a .dll file issue with Powerbuilder. 事实证明,整个问题是Powerbuilder的.dll文件问题。 When a powerbuilder web service can't find .dll files it needs it tends to just silently crash and not tell you why.
当powerbuilder Web服务找不到所需的.dll文件时,它往往只是默默地崩溃,而不告诉您原因。 To solve this problem I copied the contents of "C:\\Program Files (x86)\\Sybase\\Shared\\PowerBuilder" from my development computer (running Windows 7) to the same folder on the IIS server.
为了解决此问题,我从开发计算机(运行Windows 7)将“ C:\\ Program Files(x86)\\ Sybase \\ Shared \\ PowerBuilder”的内容复制到IIS服务器上的同一文件夹中。 After I did this both the console "self-hosted" application service on the IIS server and the IIS hosted service worked fine.
完成此操作后,IIS服务器上的控制台“自托管”应用程序服务和IIS托管服务都可以正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.