Java / Webサービス
はじめに Webサービス / Metro [9] ~ タイムアウトを設定する / クライアントサイド https://blogs.yahoo.co.jp/dk521123/36559479.html で、クライアントサイドのタイムアウトを設定した。 しかし、上記の関連記事のタイムアウト値はあくまで、 下記「クラ…
■ はじめに * 以下の Metro のユーザズガイド https://metro.java.net/1.5/guide/HTTP_Timeouts.html に従って、以下【ダメだった例】のように実装したが、タイムアウトが発生しなかった。 # サーバが、GlassFishじゃなかったから? ただ、タイムアウトを実…
はじめに http://blogs.yahoo.co.jp/dk521123/36516080.html で自前認証局(オレオレ証明書)でも何でも気にせず通すような処理をを実装したが もう少しマシな実装を考える サンプル * 今回は、決められた証明書以外は、エラーにするような実装を行う 準備 キ…
■ はじめに * Metro(ってゆーかーJAX-WS)で作成したWebサービスおよびそのクライアントで、 SOAPログ(リクエスト、レスポンス)を出力する ■ 解決策 サーバ側 https://metro.java.net/guide/ch02.html#dumping-soap-messages-on-server System.setProperty("c…
動作環境 + Windows10 + Tomcat-8.5.8 + JDK1.8 + Eclipse Neon 環境設定 * TomcatでのSSL通信の設定は以下の関連記事を参照のこと http://blogs.yahoo.co.jp/dk521123/36513426.html サンプル * ひとまず、オレオレ証明書でも何でも気にせず通すような処理…
■ JAX-WS / Metro で、Webサービス終了時のイベントを拾いたい 解決案 * @PreDestroy を付加したメソッドを実装 サンプル import javax.annotation.PreDestroy; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebService; impor…
はじめに http://blogs.yahoo.co.jp/dk521123/36139336.html http://blogs.yahoo.co.jp/dk521123/36140561.html の続き。 上記の2つの関連記事を拡張し、今度はセッションを使用する * 以下のサイトに載っていることを上記の2つの関連記事のコードに組み込む…
はじめに http://blogs.yahoo.co.jp/dk521123/36139336.html http://blogs.yahoo.co.jp/dk521123/36140561.html の続き。 上記の2つの関連記事を拡張し、今度は独自のオブジェクトのやり取りできるようにする サンプル サーバサイドの実装 SampleWebService.…
■ ポイント サーバ側 * Webサービスにおけるスコープ「soapsession」(transportsessionもOK?)を設定する必要がある * スコープについては、以下の関連記事を参照のこと。 http://blogs.yahoo.co.jp/dk521123/34600183.html クライアント側 http://space.geoc…
■ はじめに * Webサービスにアクセスできるクライアント側の処理を作成する * なお、Webサービスには以下の関連記事のものを使い、サービスを立ち上げておくこと http://blogs.yahoo.co.jp/dk521123/36128161.html ■ クライアント側作成方法 [1] コマンドプ…
はじめに http://blogs.yahoo.co.jp/dk521123/36056462.html の続き。 ポイント * Axis2で、Webサービスでクラスをやり取りするには、 対象のクラスのプロパティをGetter/Setterで定義しておくこと # publicのプロパティだとダメだった... サンプル SampleWe…
■ はじめに http://blogs.yahoo.co.jp/dk521123/36139336.html の続きで、今回はクライアント側を構築する ■ クライアント側のコードを生成する * クライアント側は簡単。以下の関連記事でやった「wsimportコマンド」を使う wsimportコマンドによる Web サー…
はじめに * Axis2でWebサービスを作成してたのだが、以下の制限があるっぽい。 + Integer/Longなどの数値が、Nullable設定できない なので、ほかの方法を模索してたところ、JAX-WS + Metro でできるっぽい。 開発環境 * Windows10 * Java1.8 * Eclipse Mars.…
はじめに http://blogs.yahoo.co.jp/dk521123/31944955.html で、環境構築をするのに、HelloWorld的なWebサービスを例に上げたが、 以下「設定環境」で構築した際に、手順を改めて纏める 設定環境 * OS : Win10 * JDK : Ver1.8 * Eclipse : Eclipse Java EE …
必要なもの (1) WSDLファイル : ここでは「HelloWorld.wsdl」 (2) サーバ側のプロジェクト : ここでは「SampleService」 (3) クライアント側のプロジェクト : ここでは「SampleJavaCodes」 サンプル (1) WSDLファイル : HelloWorld.wsdl * 「MissingNameExce…
Tomcat の 開始 / 停止イベントを拾うには * まだ試してないけど、以下の案を考えてみた。 ■案1:ServletContextListenerリスナー * ServletContextListener のcontextInitialized() (開始) / contextDestroyed() (停止)を実装する 参考文献 http://zidd…
はじめに * WSDL を 作成する方法として、以下が考えられる。 [1] 自分でTextEditorなどで、新規にWSDLファイルを作成する [2] ツール(例えば、EclipseのWSDLエディタ)で作成する [3] Axis2(Java2WSDL)を使って、Javaソースを基にWSDLファイルを自動作成…
はじめに http://blogs.yahoo.co.jp/dk521123/34445295.html の続きで、以下の関連記事でWSDLファイルからコマンドで自動生成したが、めんどいのでAntで生成できるようにする Webサービス http://blogs.yahoo.co.jp/dk521123/31984636.html サンプル ファイ…
はじめに * 以下の関連記事でWSDLファイルからコマンドで自動生成したが、めんどいのでAntで生成できるようにする クライアント http://blogs.yahoo.co.jp/dk521123/32003685.html サンプル ファイル構成 SampleService(Project) +- lib +- src(src配下に自…
初めに * WSDLを自動生成する際に、以下の関連記事のように行った場合に、勝手にパッケージ名がしてされてしまうので 自分好みのパッケージ名にする手順を記す。 http://blogs.yahoo.co.jp/dk521123/31984636.html 手順 [0] 事前設定 * 以下の関連記事の「ax…
初めに * WebサービスでSOAP リクエスト/ レスポンスの文字列を取得する方法を示す。 ログ出力すればデバッグしやすくなる。 方法 SOAPリクエストの取得方法 * 「XxxxXxxxMessageReceiverInOut」クラスの「invokeBusinessLogic」メソッドの 引数「org.apache…
原文 http://axis.apache.org/axis2/java/core/docs/reference.html WSDL2Java 構文 wsdl2java [コマンドオプション]... -uri <WSDLファイルのパス/URL> コマンドオプション `コマンドオプション`説明Default -o <path>生成したコードの出力先を指定 -a非同期コードだけを生成Default: off </path></wsdlファイルのパス/url>…
はじめに * Axis2 のクライアント・スタブで、 サーバ側の処理が重い時に、30秒(デフォルトのタイムアウト時間?)経過後に 以下のようなエラーが発生した。 内容からして、タイムアウトなので、タイムアウト時間を変更したいなっと思い調べてみて 結局、自…
はじめに http://blogs.yahoo.co.jp/dk521123/33096209.html で、Axis2での Cookie の値を取得することはできたが、 Axis2 で、Cookie を設定する方法が不明だったため、調べた。 構文 http://mail-archives.apache.org/mod_mbox/axis-java-user/200704.mbox…
■ Axis2 で、HttpServletRequest を取得するには MessageContext context = MessageContext.getCurrentMessageContext(); HttpServletRequest request = (HttpServletRequest) context.getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST); ■ 用途 * Axis2で…
Apache Commons を使用した場合 * 下記の記事で暗号化する際に使用した Apache Commons を使って、Restを実装する http://blogs.yahoo.co.jp/dk521123/32780473.html * ダウンロードや設定については、上記の記事を参照のこと。 サンプル 使用するWebサービ…
HttpURLConnection を使用した場合 * 何処からかライブラリを取得する必要はない サンプル 使用するWebサービス * Axis2で自作したサービス(例えば、以下のURLを参考)を起動させて、実行した http://blogs.yahoo.co.jp/dk521123/31944955.html RestClientW…
設定 [1] 以下のサイトから、jarファイル「jersey-bundle-1.17.1.jar」を入手する https://jersey.java.net/download.html [2] 上記のJarをインポートする (例えば、Eclipseの場合、プロジェクトを右クリックし、 [Propaties]-[Java Build Paht]-[Libraries]…
サンプル 使用するWebサービス * Axis2で自作したサービス(例えば、以下のURLを参考)を起動させて、実行した http://blogs.yahoo.co.jp/dk521123/31944955.html RestClientWithAxis2.java * Axis2 についてるサンプル「axis2-1.X.X\samples\yahoorestsearc…
はじめに http://blogs.yahoo.co.jp/dk521123/32684510.html の続きで、ここではサービスを使う側のクライアントを作成する クライアントの作成手順 [0] 対象のサービスを立ち上げておく http://blogs.yahoo.co.jp/dk521123/32684510.html [1] WSDL2java で…