CXF入門教程(4) -- 設定上下文連線屬性
原文參考: [url]http://blog.csdn.net/neareast/article/details/7733336[/url]
我們可以使用 JAX-WS 上下文來自定義客戶端代理的屬性。特別地,上下文可以用來修改連線屬性以及通過協議頭髮送資料。例如,我們可以用上下文新增一個SOAP頭,請求訊息和響應訊息都可以新增。客戶端支援下列型別的上下文:
Request context(請求上下文) - 在客戶端,請求上下文使我們能夠設定影響出站訊息的屬性。請求上下文屬性是應用到特定埠例項的,並且一旦設定了這些屬性,它們將對該埠隨後做出的每一個操作呼叫都有效,直到某屬性被顯式地消除。例如,我們可以使用請求上下文屬性來設定連線超時,或在資料頭中初始化要傳送的資料。
Response context(響應上下文) - 在客戶端,我們可以獲取響應上下文來讀取屬性值,這些值是由上一次操作呼叫的入站訊息設定的。每一次操作呼叫之後,響應上下文屬性都會被重置。例如,我們可以獲取一個響應上下文屬性來讀取從上一條入站訊息的資料頭訊息。
[b]設定請求上下文[/b]
要設定一個特殊的請求上下文屬性 ContextPropertyName,其值為 PropertyValue 可以用下面的程式碼:
我們需要將埠物件對映為 javax.xml.ws.BindingProvider ,以此來獲取請求上下文。請求上下文字身是一個 java.util.Map<String, Object> 型別,也就是一個有著String型別的“鍵”和任意型別的“值”的雜湊表。使用 java.util.Map.put() 在雜湊表中建立一個新的條目。
[b]讀取響應上下文[/b]
要檢索一個特定的響應上下文屬性 ContextPropertyName 使用如下程式碼:
Reading a Response Context Property on the Client Side
響應上下文的型別是 java.util.Map<String, Object> ,也是一個有著String型別的“鍵”和任意型別的“值”的雜湊表。我們可以使用 java.util.Map.get() 來獲取響應上下文屬性雜湊表中的一個條目。
[b]受支援的上下文型別[/b]
CXF支援下列上下文屬性:
上下文屬性名 org.apache.cxf.ws.addressing.JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES
上下文屬性型別 org.apache.cxf.ws.addressing.AddressingProperties
我們可以使用 JAX-WS 上下文來自定義客戶端代理的屬性。特別地,上下文可以用來修改連線屬性以及通過協議頭髮送資料。例如,我們可以用上下文新增一個SOAP頭,請求訊息和響應訊息都可以新增。客戶端支援下列型別的上下文:
Request context(請求上下文) - 在客戶端,請求上下文使我們能夠設定影響出站訊息的屬性。請求上下文屬性是應用到特定埠例項的,並且一旦設定了這些屬性,它們將對該埠隨後做出的每一個操作呼叫都有效,直到某屬性被顯式地消除。例如,我們可以使用請求上下文屬性來設定連線超時,或在資料頭中初始化要傳送的資料。
Response context(響應上下文) - 在客戶端,我們可以獲取響應上下文來讀取屬性值,這些值是由上一次操作呼叫的入站訊息設定的。每一次操作呼叫之後,響應上下文屬性都會被重置。例如,我們可以獲取一個響應上下文屬性來讀取從上一條入站訊息的資料頭訊息。
[b]設定請求上下文[/b]
要設定一個特殊的請求上下文屬性 ContextPropertyName,其值為 PropertyValue 可以用下面的程式碼:
Setting a Request Context Property on the Client Side
// Set request context property.
java.util.Map<String, Object> requestContext =
((javax.xml.ws.BindingProvider)port).getRequestContext();
requestContext.put(ContextPropertyName, PropertyValue);
// Invoke an operation.
port.SomeOperation();
我們需要將埠物件對映為 javax.xml.ws.BindingProvider ,以此來獲取請求上下文。請求上下文字身是一個 java.util.Map<String, Object> 型別,也就是一個有著String型別的“鍵”和任意型別的“值”的雜湊表。使用 java.util.Map.put() 在雜湊表中建立一個新的條目。
[b]讀取響應上下文[/b]
要檢索一個特定的響應上下文屬性 ContextPropertyName 使用如下程式碼:
Reading a Response Context Property on the Client Side
// Invoke an operation.
port.SomeOperation();
// Read response context property.
java.util.Map<String, Object> responseContext =
((javax.xml.ws.BindingProvider)port).getResponseContext();
PropertyType propValue = (PropertyType) responseContext.get(ContextPropertyName);
響應上下文的型別是 java.util.Map<String, Object> ,也是一個有著String型別的“鍵”和任意型別的“值”的雜湊表。我們可以使用 java.util.Map.get() 來獲取響應上下文屬性雜湊表中的一個條目。
[b]受支援的上下文型別[/b]
CXF支援下列上下文屬性:
上下文屬性名 org.apache.cxf.ws.addressing.JAXWSAConstants.CLIENT_ADDRESSING_PROPERTIES
上下文屬性型別 org.apache.cxf.ws.addressing.AddressingProperties
相關文章
- CXF入門教程(1) -- 第一個webServiceWeb
- CXF--入門
- CXF入門教程(5) -- webService非同步呼叫模式Web非同步模式
- MQTT 5.0 連線屬性MQQT
- CXF入門教程(2) -- 第一個客戶端客戶端
- 程式設計使用WMI 控制連線屬性 (轉)程式設計
- C#快速入門教程(5)——欄位與屬性C#
- 表屬性設定
- JavaScript設定屬性JavaScript
- 《MySQL 入門教程》第 18 篇 連線查詢MySql
- 電腦 Windows 7 設定連線PPTP教程Windowspptp
- xmanager 2.0連線redhat as 4的設定方法Redhat
- jQuery設定disabled屬性與移除disabled屬性jQuery
- Cookie設定HttpOnly屬性CookieHTTP
- Android入門教程 | Button,TextView背景設定AndroidTextView
- 行內元素屬性設定
- Echarts中Option屬性設定Echarts
- 執行緒屬性設定執行緒
- jquery設定href屬性值jQuery
- HttpClient4.X 升級 入門 + http連線池使用HTTPclient
- CXF入門教程(3) -- webService客戶端開發步驟詳解Web客戶端
- 將href屬性值寫入連結<a>
- Log4J入門教程(一) 入門例程
- Xcode設定自己的個性屬性XCode
- Flutter 入門 — Container 屬性詳解FlutterAI
- react-router4入門教程React
- css入門教程資料(4)CSS
- C#反射設定屬性值和獲取屬性值C#反射
- AppTheme屬性設定集合APP
- CSS中常用的屬性設定CSS
- jQuery - 設定內容和屬性jQuery
- sping中 schemaLocation 屬性設定
- Android activity屬性設定大全Android
- Gradle的屬性設定大全Gradle
- ADO.NET入門教程之資料庫連線池資料庫
- Xamarin XAML語言教程Progress屬性設定進度條進度
- 線性方程組 入門概念
- mysql設定ip連線MySql