2017-09-13 28 views
0

jlmapiを使用してjavaからInformaticaワークフローを実行しようとしています。しかし、私はエラーが発生しているので、接続自体を行うことができません。これは私のコードです: -Javaでinformaticaワークフローを実行

public class executeWorkflow { 

    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
     IJLMDriver ld = null; 
     IJLMConnection connection = null; 

     try { 
      ld = DriverFactory.getDriver("JLMDriver10"); 
     } catch (JLMException e) { 
      e.printStackTrace(); 
     } 
     try { 
      ld.initialize("C:\\ExecuteWorkflow_WIN64_v1\\lib\\lib\\locale"); 
     } catch (JLMException e1) { 

      e1.printStackTrace(); 
     } 
     try { 
      connection = ld.getConnection("domain_name",6005,180,null); 
     } catch (JLMException e1) { 
      e1.printStackTrace(); 
     } 
     try { 
      connection.login("","Repository","admin","pwd",null); 
     } catch (JLMException e1) { 
      e1.printStackTrace(); 
     } 
     IJLMServerDetails srvdetails = null; 
     try { 
     srvdetails =connection.getServerDetails(EJLMMonitorServerMode.ALL,null); 
     } catch (JLMException e) { 
      e.printStackTrace(); 
     } 
     System.out.println("Server Status: "+srvdetails.getStatus().toString()); 
     IJLMWorkflowDetails[] workflow = srvdetails.getWorkflows(); 
     System.out.println("Number of Workflows: " + workflow.length); 
    } 

} 

私は、次のエラーを取得しています:

Error Code: -109 Error Message: Unable to establish connection with Informatica Server Message Context: IJLMDriver::getConnection(domain,6005,180) 
    at com.informatica.powercenter.sdk.lm.JLMException.handleExceptionOrWarning(JLMException.java:545) 
    at com.informatica.powercenter.sdk.lm.JLMDriver10.getConnection(JLMDriver10.java:197) 
    at informatica.executeWorkflow.main(executeWorkflow.java:93) 
Exception in thread "main" java.lang.NullPointerException 
    at informatica.executeWorkflow.main(executeWorkflow.java:99) 

私が間違っているのか?また、getConnectionパラメータのポート番号の近くにある180は何ですか?

答えて

0

Informaticaのバージョンが10以降のAPIがあるため、上記のコードは機能しません。これは9.6.1であり、APIと互換性がありません。このための回避策があります。 pmcmd.batchファイルを使用してワークフローを実行できます。 Javaコードから.exeファイルを呼び出すことができます。私はそれについても質問しました。ここにコードを見つけることができます - Running pmcmd from java

関連する問題