ジョブ・スケジューラーの Web サービス・インターフェースの使用によるバッチ・ジョブのサブミット

ジョブ・スケジューラーの Web サービス・インターフェースを使用して、バッチ・ジョブのサブミットおよび操作をプログラムで行います。

始める前に

ジョブ・スケジューラーでは、Java™ Platform, Enterprise Edition (Java EE) アプリケーション向けの EJB インターフェースおよび Java EE と非 Java EE の両方のアプリケーション向けの Web サービス・インターフェースの両方を介する、そのジョブ・スケジューラー機能へのプログラムによるアクセスをサポートしています。ジョブ・スケジューラーの Web サービス・インターフェースは、Web サービス記述言語 (WSDL) で記述されます。

バッチ・アプリケーションを開発してインストールします。

このタスクについて

このトピックでは、バッチ ジョブをジョブ・スケジューラーにサブミットする方法を説明します。ここでは、ジョブ・スケジューラー Web サービス・インターフェースを呼び出す方法を示すコード例も紹介します。

手順

  1. バッチ作業をサブミットするためのプログラムを作成します。

    次の例では、ジョブ・スケジューラー Web サービス・インターフェースを呼び出してバッチ・ジョブをサブミットする方法を示します。

    一部のステートメントは印刷目的のために複数行に分割されています。

    import javax.xml.namespace.QName;
    	import javax.xml.rpc.Call;
    		import javax.xml.rpc.ParameterMode;
    		import javax.xml.rpc.Service;
    		import javax.xml.rpc.ServiceException;
    		import javax.xml.rpc.ServiceFactory;
    		import javax.xml.rpc.encoding.XMLType;
    
       		Call call = null;
    		String lrsHostName = "localhost";
    		String lrsPort = "9080";
    
    		private String readXJCL() throws FileNotFoundException, IOException {	
    				// Code to read xJCL file into a String
    	}
    
          public void submitJob() {
          		String endPoint = 
              "http://"+lrsHostName+":"+lrsPort+"/LongRunningJobSchedulerWebSvcRouter/
                services/JobScheduler";
          	try {
             				ServiceFactory serviceFactory = ServiceFactory.newInstance();
             				Service service = serviceFactory.createService(new 
                  QName("http://longrun.websphere.ibm.com", "JobSchedulerService"));
    
             				call = (Call) service.createCall();
          				call.setProperty(Call.ENCODINGSTYLE_URI_PROPERTY, 
                "http://schemas.xmlsoap.org/soap/encoding/");
          				call.setProperty(Call.OPERATION_STYLE_PROPERTY, "wrapped");
          				call.setPortTypeName(new 
                QName("http://longrun.websphere.ibm.com", "JobSchedulerService"));
          		call.setTargetEndpointAddress(endPoint);     
          
          				//remove all parameters from call object
          		call.removeAllParameters();
          				call.setReturnType(XMLType.SOAP_STRING, null);
          				call.addParameter("arg", XMLType.SOAP_STRING, ParameterMode.IN);
          				call.setOperationName(new QName("http://longrun.websphere.ibm.com","submitJob"));
    
    						String xjcl = readXJCL(); // Method to read xJCL file into a string      
    
    	     			     		call.invoke(new Object[] {xjcl});
          	} catch (ServiceException se) {
          				System.out.println("Service Exception: " + se.getMessage());
          		se.printStackTrace();
          	} catch (java.rmi.RemoteException re) {
          				System.out.println("Remote Exception: " + re.getMessage());
          		re.printStackTrace();
          	}
          }
  2. バッチ作業をサブミットするプログラムを実行します。

トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tgrid_xdbguswsi
ファイル名:tgrid_xdbguswsi.html