和CRM系統對接,需要在流程表單提交后,向CRM發送GET請求告知CRM系統數據有變更。
直接上代碼,后續補充:
package weaver.interfaces.workflow.action.javacode;
import weaver.interfaces.workflow.action.Action;
import weaver.general.BaseBean;
import weaver.general.BaseBean;
import weaver.soa.workflow.request.RequestInfo;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;
/**
* 在線自定義action接口
*/
public class Action20211223034636 extends BaseBean implements Action {
/**
* 流程路徑節點后選擇aciton后,會在節點提交后執行此方法。
*/
public String execute(RequestInfo request) {
String url = "http://192.168.10.21:8081/FVevent?pactid=www&date=123";
String result = httpUtilGet(url);
writeLog("請求結果:" + result);
return Action.SUCCESS;
}
// 通過http發送get請求
public String httpUtilGet(String path) {
StringBuilder result = new StringBuilder();
try {
URL url = new URL(path);
// 打開url的連接
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
// 設置請求方式
conn.setRequestMethod("GET");
conn.setDoOutput(true);
conn.setDoInput(true);
PrintWriter out = new PrintWriter(conn.getOutputStream());
out.flush();
// 獲取響應輸入流
InputStream is = conn.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
String str = "";
while ((str = br.readLine()) != null) {
result.append(str);
}
// 關閉輸入流
is.close();
conn.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
return result.toString();
}
}