intra-mart IM-Workflow トラブルシューティング 第9版 2016-04-01

4.2. 処理できない


4.2.1. 申請や承認の際に「一時領域のディレクトリが見つかりません」というエラーが発生する

対象バージョン

  • iWP / iAF の場合

    • IM-Workflow 7.2.0 ~ 最新バージョン
  • intra-mart Accel Platform の場合

    • 2012 Autumn(Alba) IM-Workflow 8.0.1 ~ 最新バージョン

現象

申請や承認の際に、画面上に『申請に失敗しました。』『処理に失敗しました。』というエラーメッセージが表示されます。

条件

  • 別PCや、同一ブラウザの複数タブにて、同一ユーザコードで複数ログインを行い、 IM-Workflow の処理画面を表示している

  • 事象の発生時刻に該当する例外ログに下記のようなスタックトレースが出力されている

    log.message=一時領域のディレクトリが見つかりません。
    
    jp.co.intra_mart.foundation.workflow.exception.WorkflowApiException
       at jp.co.intra_mart.system.workflow.internal.manager.attachfile.AttachFileManager.checkDirectory(AttachFileManager.java:350)
       at jp.co.intra_mart.system.workflow.internal.manager.attachfile.AttachFileManager.addFileToTemp(AttachFileManager.java:144)
       at jp.co.intra_mart.foundation.workflow.util.WorkflowAttachFileManager.addFileToTemp(WorkflowAttachFileManager.java:116)
       at jp.co.intra_mart.system.workflow.javascript.util.WorkflowAttachFileManagerObject.jsFunction_addFileToTemp(WorkflowAttachFileManagerObject.java:211)
    
       (省略)
    

原因

製品の仕様です。

添付ファイルの一時アップロード先ディレクトリは、ユーザ単位で一意となっています。
別PCや、同一ブラウザの複数タブにて、同一ユーザコードで複数ログインを行い、 IM-Workflow の処理画面を表示すると、添付ファイルの一時アップロード先ディレクトリの初期化が不正に実行されるため、当事象が発生します。
上記の操作は、リリースノートの制限事項に、サポート対象外であることが明記されています。

解決方法

ありません。

回避方法

サポート対象外となるため、上記の操作を行わないでください。

復旧方法

一覧画面から対象の操作を再度やり直してください。

4.2.2. 初期ソート条件に案件プロパティを指定すると、案件に対する処理が実行できない

対象バージョン

  • iWP / iAF の場合

    • 対象外
  • intra-mart Accel Platform の場合

    • 2013 Summer(Damask) IM-Workflow 8.0.4

現象

以下の一覧を表示し、案件に対する処理用アイコンをクリックしたとき、ユーザコンテンツ画面の表示は行われるがサーバで例外が発生し、案件の処理が実行できません。
  • 一時保存一覧(「申請」アイコンの押下時)
  • 未処理一覧(「処理」アイコンの押下時)
  • 未処理 - 連続処理一覧(「連続処理開始」アイコンの押下時)
  • 確認一覧(「確認」アイコンの押下時)
  • 確認 - 連続確認一覧(「連続確認開始」アイコンの押下時)

条件

  • 対象の一覧画面に対する一覧表示パターン定義にて、案件プロパティを第1初期ソート条件として設定している

  • 事象の発生時刻に該当する例外ログに下記のようなスタックトレースが出力されている

    (省略)
    log.message=引数が不正です。
    
    jp.co.intra_mart.foundation.workflow.exception.WorkflowApiException: Unexpected character (u) at position 160.
       at jp.co.intra_mart.system.workflow.taglib.WorkflowOpenPage.getStartTagData(WorkflowOpenPage.java:555)
       at jp.co.intra_mart.system.workflow.taglib.imarttag.ImartTag4WorkflowOpenPage.doTag(ImartTag4WorkflowOpenPage.java:74)
       at jp.co.intra_mart.system.javascript.imapi.ImartTagTypeManager.invoke(ImartTagTypeManager.java:200)
       at jp.co.intra_mart.system.javascript.imapi.ImartObject.callFunction(ImartObject.java:70)
       at jp.co.intra_mart.system.javascript.imapi.ImartObject.callFunction(ImartObject.java:55)
       at jp.co.intra_mart.system.jssp.script.view.ImartTag.execute(ImartTag.java:157)
       at jp.co.intra_mart.system.jssp.script.view.Composition.execute(Composition.java:237)
    
    (省略)
    
    Caused by: Unexpected character (u) at position 160.
       at org.json.simple.parser.Yylex.yylex(Unknown Source)
       at org.json.simple.parser.JSONParser.nextToken(Unknown Source)
       at org.json.simple.parser.JSONParser.parse(Unknown Source)
       at org.json.simple.parser.JSONParser.parse(Unknown Source)
       at org.json.simple.parser.JSONParser.parse(Unknown Source)
       at org.json.simple.JSONValue.parseWithException(Unknown Source)
       at jp.co.intra_mart.system.workflow.taglib.WorkflowOpenPage.getStartTagData(WorkflowOpenPage.java:553)
       ... 70 more
    

原因

製品の不具合です。
画面一覧ヘッダ情報を生成する処理にて、案件プロパティのカラムIDとカラム名に対する、プリフィックス付加処理の実装が漏れているためです。
以下の要件で対応を行っています。
  • iWP / iAF の場合

    • 対象外
  • intra-mart Accel Platform の場合

    • 要件 [20477] 案件プロパティのキーに数字を登録すると、一覧表示できません。

解決方法

以下のパッチまたはアップデートを適用することで解決します。
  • iWP / iAF の場合

    • 対象外
  • intra-mart Accel Platform の場合

    • 2013 Autumn(Eden) IM-Workflow 8.0.5

回避方法

一覧表示パターン定義にて、第1初期ソート条件には案件プロパティ以外の項目を指定してください。

復旧方法

ありません。

4.2.3. 承認ノードの処理時に「処理に失敗しました」が発生して処理できない

対象バージョン

  • iWP / iAF の場合

    • IM-Workflow 7.2.0 ~ IM-Workflow 7.2.6
  • intra-mart Accel Platform の場合

    • 2012 Autumn(Alba) IM-Workflow 8.0.1 ~ 2012 Winter(Bourbon) IM-Workflow 8.0.2

現象

承認の際に、画面上に『処理に失敗しました。』というエラーメッセージが表示されます。

条件

以下の条件をすべて満たす場合に、承認時にエラーが発生します。
  • 承認するノードが同期のルート内に存在します。同期ルート内に未処理ノードは承認を行うノード1個しかない状態で、承認処理を行うことで、同期終了になる状態です。
  • 同期開始ノードの処理終了時刻と比べて、1つの案件あるいは複数の案件で承認ノードを処理した時刻が1/1000秒まで完全に一致するデータが「IMW_T_CPL_TASK」テーブルの「end_date」カラムに存在します。
事象の発生時刻に該当する例外ログに下記のようなスタックトレースが出力されている
  • 終了ノードの到達処理でスレッドセーフによるエラーが発生した場合
log.message=[Engine - Thread]スレッドタスク実行で例外が発生しました。

jp.co.intra_mart.foundation.workflow.exception.WorkflowException: jp.co.intra_mart.system.workflow.engine.database.WorkflowDAOException: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadExceptionHandlerImpl.execute(WorkflowThreadExceptionHandlerImpl.java:25)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:126)
Caused by: jp.co.intra_mart.system.workflow.engine.database.WorkflowDAOException: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeArrivedEvent(ExtensionEventExecutor.java:468)
   at jp.co.intra_mart.system.workflow.engine.thread.task.ArrivedProcessTask.execute(ArrivedProcessTask.java:160)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:97)
Caused by: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.thread.task.TemplateMailSendTask.createReplaceMap(TemplateMailSendTask.java:395)
   at jp.co.intra_mart.system.workflow.internal.manager.mail.TemplateMailSendManager.getMailReplaceMapData(TemplateMailSendManager.java:361)
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeArrivedEvent(ExtensionEventExecutor.java:458)
   ... 2 more
Caused by: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.util.WorkflowPluginUtil.getUserInfo(WorkflowPluginUtil.java:1056)
   at jp.co.intra_mart.system.workflow.engine.thread.task.TemplateMailSendTask.getSingleUserInfo(TemplateMailSendTask.java:1794)
   at jp.co.intra_mart.system.workflow.engine.thread.task.TemplateMailSendTask.createReplaceMap(TemplateMailSendTask.java:310)
   ... 4 more
Caused by: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.core.listener.SearchListenerContext.getUserInfo(SearchListenerContext.java:195)
   at jp.co.intra_mart.system.workflow.util.WorkflowPluginUtil.getUserInfo(WorkflowPluginUtil.java:1050)
   ... 6 more
  • 案件終了処理でスレッドセーフによるエラーが発生した場合
log.message=[Engine - Thread]スレッドタスク実行で例外が発生しました。

jp.co.intra_mart.foundation.workflow.exception.WorkflowException: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadExceptionHandlerImpl.execute(WorkflowThreadExceptionHandlerImpl.java:25)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:126)
Caused by: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeMatterEndExtension(ExtensionEventExecutor.java:600)
   at jp.co.intra_mart.system.workflow.engine.thread.task.MatterEndTask.execute(MatterEndTask.java:186)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:97)
Caused by: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.thread.task.TemplateMailSendTask.createReplaceMap(TemplateMailSendTask.java:395)
   at jp.co.intra_mart.system.workflow.internal.manager.mail.TemplateMailSendManager.getMailReplaceMapData(TemplateMailSendManager.java:361)
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeMatterEndExtension(ExtensionEventExecutor.java:593)
   ... 2 more
Caused by: jp.co.intra_mart.foundation.workflow.exception.WorkflowPluginException: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.util.WorkflowPluginUtil.getUserInfo(WorkflowPluginUtil.java:1056)
   at jp.co.intra_mart.system.workflow.engine.thread.task.TemplateMailSendTask.getSingleUserInfo(TemplateMailSendTask.java:1794)
   at jp.co.intra_mart.system.workflow.engine.thread.task.TemplateMailSendTask.createReplaceMap(TemplateMailSendTask.java:310)
   ... 4 more
Caused by: jp.co.intra_mart.system.workflow.engine.common.EngineException
   at jp.co.intra_mart.system.workflow.engine.core.listener.SearchListenerContext.getUserInfo(SearchListenerContext.java:195)
   at jp.co.intra_mart.system.workflow.util.WorkflowPluginUtil.getUserInfo(WorkflowPluginUtil.java:1050)
   ... 6 more
  • 終了ノードの到達処理で何らかの原因によるエラーが発生した場合
log.message=[Engine - Thread]スレッドタスク実行で例外が発生しました。

jp.co.intra_mart.foundation.workflow.exception.WorkflowException: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowExternalException
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadExceptionHandlerImpl.execute(WorkflowThreadExceptionHandlerImpl.java:25)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:126)
Caused by: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowExternalException
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeArrivedEvent(ExtensionEventExecutor.java:493)
   at jp.co.intra_mart.system.workflow.engine.thread.task.ArrivedProcessTask.execute(ArrivedProcessTask.java:160)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:97)
Caused by: jp.co.intra_mart.foundation.workflow.exception.WorkflowExternalException
   at jp.co.intra_mart.system.workflow.plugin.process.arrive.ArriveProcessJavaScriptExecutorEvent.execute(ArriveProcessJavaScriptExecutorEvent.java:91)
   at jp.co.intra_mart.system.workflow.listener.context.WorkflowArriveProcessEventListenerContext.execute(WorkflowArriveProcessEventListenerContext.java:67)
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeArrivedEvent(ExtensionEventExecutor.java:491)
   ... 2 more
  • 案件終了処理で何らかの原因によるエラーが発生した場合
log.message=[Engine - Thread]スレッドタスク実行で例外が発生しました。

jp.co.intra_mart.foundation.workflow.exception.WorkflowException: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowExternalException
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadExceptionHandlerImpl.execute(WorkflowThreadExceptionHandlerImpl.java:25)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:126)
Caused by: jp.co.intra_mart.system.workflow.engine.common.EngineException: jp.co.intra_mart.foundation.workflow.exception.WorkflowExternalException
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeMatterEndExtension(ExtensionEventExecutor.java:618)
   at jp.co.intra_mart.system.workflow.engine.thread.task.MatterEndTask.execute(MatterEndTask.java:186)
   at jp.co.intra_mart.system.workflow.engine.thread.WorkflowThreadRunner.run(WorkflowThreadRunner.java:97)
Caused by: jp.co.intra_mart.foundation.workflow.exception.WorkflowExternalException
   at jp.co.intra_mart.system.workflow.plugin.process.matterEnd.MatterEndProcessJavaScriptExecutorEvent.execute(MatterEndProcessJavaScriptExecutorEvent.java:82)
   at jp.co.intra_mart.system.workflow.listener.context.WorkflowMatterEndProcessEventListenerContext.execute(WorkflowMatterEndProcessEventListenerContext.java:65)
   at jp.co.intra_mart.system.workflow.engine.core.event.ExtensionEventExecutor.executeMatterEndExtension(ExtensionEventExecutor.java:615)
   ... 2 more

原因

製品の不具合です。
同期処理などの結合判定ロジックで必要なデータ取得SQLに誤りがあるためです。
以下の要件で対応を行っています。
  • iWP / iAF の場合

    • 要件 [16307] 承認処理を完全に同時刻に実行したデータが存在すると同期結合処理が失敗
  • intra-mart Accel Platform の場合

    • 要件 [19476] 承認処理を完全に同時刻に実行したデータが存在すると同期結合処理が失敗

解決方法

以下のパッチまたはアップデートを適用することで解決します。
  • iWP / iAF の場合

    • IM-Workflow 7.2.7
  • intra-mart Accel Platform の場合

    • 2013 Spring(Climbing) IM-Workflow 8.0.3

回避方法

ありません。

復旧方法

ありません。

4.2.4. 同時に複数人で同一案件を処理すると、エラーが発生する

対象バージョン

  • iWP / iAF の場合

    • IM-Workflow 7.2.0 ~ 最新バージョン
  • intra-mart Accel Platform の場合

    • 2012 Autumn(Alba) IM-Workflow 8.0.1 ~ 最新バージョン

現象

同時に複数人で同一案件を処理すると、処理に失敗します。
同時に、以下のエラーメッセージが画面に表示されます。
処理画面の表示に失敗しました。
対象の案件が既に処理されたか、削除された、または他ノードの非同期処理が実行中の可能性があるため、案件情報が取得できません。

条件

同時に複数人で同一案件を処理する。

注意

同期開始・終了ノード間、分岐開始・終了ノード間、縦配置ノード内の別々のノードへの処理は含まれません。

原因

製品の仕様です。
変更前の案件情報を使用して、変更された案件情報に対して処理を行うことができないよう、製品内部で排他制御を行っているためです。

解決方法

ありません。

回避方法

一覧画面から再度処理を行ってください。

復旧方法

ありません。