2011-09-30 81 views
0

在Primavera P6上安裝了許多Web服務。 WSDL:ActivityCodeAssignment.wsdl在.net中使用p6 web服務

主鍵:由以下元素組成的多部分密鑰:

ActivityObjectId 
ActivityCodeTypeObjectId 

目標命名:http://xmlns.oracle.com/Primavera/P6/WS/ActivityCodeAssignment/V1

默認傳輸網址:

http://<hostname>:<port number>/p6ws/services/ActivityCodeAssignment?wsdl 
https://<hostname>:<port number>/p6ws/services/ActivityCodeAssignment?wsdl 

但是,如果我在網絡瀏覽器上輸入: http://my-machine:7005/p6ws/services/ActivityCodeAssignment?wsdl

它顯示「沒有找到服務」。

如果我嘗試在Visual Studio中添加服務引用,它說。

There was an error downloading 'http://my-machine:7005/p6ws/services/ActivityCodeAssignment?wsdl'. 
The request failed with HTTP status 404: Not Found. 
Metadata contains a reference that cannot be resolved: 'http://my-machine:7005/p6ws/services/ActivityCodeAssignment?wsdl'. 
There was no endpoint listening at http://my-machine:7005/p6ws/services/ActivityCodeAssignment?wsdl that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details. 
The remote server returned an error: (404) Not Found. 
If the service is defined in the current solution, try building the solution and adding the service reference again. 

P6是否使用了一些不同的Web服務?

回答

3

在我的機器,運行Oracle數據庫,用P6 8.1版Web服務的Weblogic服務器,這個網址是:

http://<hostname>:<port number>/p6ws/services/ActivityCodeAssignmentService?wsdl 

注意上漲到年底的單詞「服務」。

0

不確定您正在使用哪個版本的P6。

首先,請檢查根Web服務URL是否工作:

[HTTP://主機名:端口/ p6ws]

如果沒有,你可能需要檢查您的P6 Web Services是正確安裝和部署。

這是P6 Web Services管理員指南7.0版:

http://docs.oracle.com/cd/E16281_01/Technical_Documentation/Web_Services/wsadmin.pdf

如果可以訪問根Web服務和其他終端如ActivityService [HTTP://主機:端口/ p6ws /服務/ ActivityService WSDL]而不是ActivityCodeAssignmentService,但你想使用它,你可能需要用下面的步驟來建立自己的WS存根:

  1. 在創建一個類庫項目.NET名稱P6WSStubs
  2. 將根名稱空間更改爲Primavera
  3. 添加對Microsoft WSE 3.0的引用。
  4. 添加以下Web引用Ws.P6.ActivityCodeAssignment - [http:// hostname:port/p6ws/services/ActivityCodeAssignmentService?wsdl]
  5. 構建P6WSStubs。dll的

希望它會幫助你,

瑜珈