hzzz 7 years ago
parent
commit
5219c6e0d2
  1. 74
      designer-base/src/com/fr/env/RemoteEnv.java

74
designer-base/src/com/fr/env/RemoteEnv.java vendored

@ -8,7 +8,6 @@ import com.fr.base.remote.RemoteDeziConstants;
import com.fr.common.rpc.RemoteCallServerConfig; import com.fr.common.rpc.RemoteCallServerConfig;
import com.fr.common.rpc.netty.MessageSendExecutor; import com.fr.common.rpc.netty.MessageSendExecutor;
import com.fr.common.rpc.netty.RemoteCallClient; import com.fr.common.rpc.netty.RemoteCallClient;
import com.fr.core.env.EnvConstants;
import com.fr.core.env.EnvContext; import com.fr.core.env.EnvContext;
import com.fr.core.env.resource.RemoteEnvConfig; import com.fr.core.env.resource.RemoteEnvConfig;
import com.fr.data.TableDataSource; import com.fr.data.TableDataSource;
@ -27,7 +26,6 @@ import com.fr.general.IOUtils;
import com.fr.general.Inter; import com.fr.general.Inter;
import com.fr.general.LogRecordTime; import com.fr.general.LogRecordTime;
import com.fr.general.LogUtils; import com.fr.general.LogUtils;
import com.fr.general.http.HttpToolbox;
import com.fr.io.utils.ResourceIOUtils; import com.fr.io.utils.ResourceIOUtils;
import com.fr.json.JSONArray; import com.fr.json.JSONArray;
import com.fr.json.JSONObject; import com.fr.json.JSONObject;
@ -39,18 +37,15 @@ import com.fr.stable.ArrayUtils;
import com.fr.stable.EncodeConstants; import com.fr.stable.EncodeConstants;
import com.fr.stable.Filter; import com.fr.stable.Filter;
import com.fr.stable.JavaCompileInfo; import com.fr.stable.JavaCompileInfo;
import com.fr.stable.ProductConstants;
import com.fr.stable.StableUtils; import com.fr.stable.StableUtils;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
import com.fr.stable.SvgProvider; import com.fr.stable.SvgProvider;
import com.fr.stable.file.XMLFileManagerProvider; import com.fr.stable.file.XMLFileManagerProvider;
import com.fr.stable.project.ProjectConstants; import com.fr.stable.project.ProjectConstants;
import com.fr.stable.xml.XMLTools; import com.fr.stable.xml.XMLTools;
import com.fr.third.guava.base.Strings;
import com.fr.third.guava.collect.ImmutableMap;
import com.fr.web.ResourceConstants; import com.fr.web.ResourceConstants;
import javax.swing.*; import javax.swing.JOptionPane;
import javax.xml.transform.Source; import javax.xml.transform.Source;
import javax.xml.transform.Transformer; import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException; import javax.xml.transform.TransformerConfigurationException;
@ -58,7 +53,7 @@ import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory; import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource; import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamResult;
import java.awt.*; import java.awt.Component;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
@ -75,8 +70,6 @@ import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.Map; import java.util.Map;
import static com.fr.third.guava.base.Preconditions.checkArgument;
/** /**
* @author null * @author null
*/ */
@ -217,7 +210,13 @@ public class RemoteEnv extends AbstractEnv<RemoteEnvConfig> implements DesignAut
* @throws Exception 异常 * @throws Exception 异常
*/ */
public boolean testServerConnection() throws Exception { public boolean testServerConnection() throws Exception {
return testConnection(true, true, DesignerContext.getDesignerFrame()); try {
connectOnce();
return true;
} catch (Exception e) {
JOptionPane.showMessageDialog(DesignerContext.getDesignerFrame(), Inter.getLocText("Datasource-Connection_failed"));
return false;
}
} }
/** /**
@ -228,7 +227,12 @@ public class RemoteEnv extends AbstractEnv<RemoteEnvConfig> implements DesignAut
*/ */
@Override @Override
public boolean testServerConnectionWithOutShowMessagePane() throws Exception { public boolean testServerConnectionWithOutShowMessagePane() throws Exception {
return testConnection(false, true, DesignerContext.getDesignerFrame()); try {
connectOnce();
return true;
} catch (Exception e) {
return false;
}
} }
/** /**
@ -239,54 +243,14 @@ public class RemoteEnv extends AbstractEnv<RemoteEnvConfig> implements DesignAut
* @throws Exception 异常 * @throws Exception 异常
*/ */
public boolean testConnectionWithOutRegisteServer(Component messageParentPane) throws Exception { public boolean testConnectionWithOutRegisteServer(Component messageParentPane) throws Exception {
return testConnection(true, false, messageParentPane); try {
} connectOnce();
private boolean testConnection(boolean needMessage, boolean isRegisteServer, Component parentComponent) throws Exception {
checkArgument(parentComponent instanceof Component, "parentComponent should be a java.awt.component");
Component component = parentComponent;
String url = String.format("%s/connection", EnvConstants.toDecisionPath(getPath()));
ImmutableMap<String, Object> params = ImmutableMap.of(
"version", (Object) ProductConstants.DESIGNER_VERSION
);
ImmutableMap<String, String> headers = ImmutableMap.of(
EnvConstants.USERNAME, getUser(),
EnvConstants.PWD, getPassword());
String res = HttpToolbox.post(url, params, headers);
if (Strings.isNullOrEmpty(res)) {
if (needMessage) {
JOptionPane.showMessageDialog(component, Inter.getLocText("Datasource-Connection_failed"));
}
return false;
} else if (ComparatorUtils.equals(res, "true")) {
return true; return true;
} else { } catch (Exception e) {
if (ComparatorUtils.equals(res, EnvConstants.AUTH_ERROR)) { JOptionPane.showMessageDialog(messageParentPane, Inter.getLocText("Datasource-Connection_failed"));
JOptionPane.showMessageDialog(component,
Inter.getLocText(new String[]{"Datasource-Connection_failed", "Registration-User_Name", "Password", "Error"}, new String[]{",", "", "", "!"})
, Inter.getLocText("FR-Server-All_Error"), JOptionPane.ERROR_MESSAGE);
return false;
} else {
if (ComparatorUtils.equals(res, EnvConstants.WAR_ERROR)) {
if (needMessage) {
JOptionPane.showMessageDialog(component, Inter.getLocText(new String[]{"Datasource-Connection_failed", "NS-war-remote"}, new String[]{",", "!"}));
} else {
FineLoggerFactory.getLogger().info(Inter.getLocText(new String[]{"Datasource-Connection_failed", "NS-war-remote"}, new String[]{",", "!"}));
}
return false;
} else {
if (needMessage) {
JOptionPane.showMessageDialog(component, Inter.getLocText("Datasource-Connection_failed"));
} else {
FineLoggerFactory.getLogger().info(Inter.getLocText(new String[]{"Datasource-Connection_failed", "Version-does-not-support"}, new String[]{",", "!"}));
}
return false; return false;
} }
} }
}
}
private void refreshHttpSProperty() { private void refreshHttpSProperty() {
if (getPath().startsWith(HTTPS_PREFIX) && System.getProperty(CERT_KEY) == null) { if (getPath().startsWith(HTTPS_PREFIX) && System.getProperty(CERT_KEY) == null) {

Loading…
Cancel
Save