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

76
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.netty.MessageSendExecutor;
import com.fr.common.rpc.netty.RemoteCallClient;
import com.fr.core.env.EnvConstants;
import com.fr.core.env.EnvContext;
import com.fr.core.env.resource.RemoteEnvConfig;
import com.fr.data.TableDataSource;
@ -27,7 +26,6 @@ import com.fr.general.IOUtils;
import com.fr.general.Inter;
import com.fr.general.LogRecordTime;
import com.fr.general.LogUtils;
import com.fr.general.http.HttpToolbox;
import com.fr.io.utils.ResourceIOUtils;
import com.fr.json.JSONArray;
import com.fr.json.JSONObject;
@ -39,18 +37,15 @@ import com.fr.stable.ArrayUtils;
import com.fr.stable.EncodeConstants;
import com.fr.stable.Filter;
import com.fr.stable.JavaCompileInfo;
import com.fr.stable.ProductConstants;
import com.fr.stable.StableUtils;
import com.fr.stable.StringUtils;
import com.fr.stable.SvgProvider;
import com.fr.stable.file.XMLFileManagerProvider;
import com.fr.stable.project.ProjectConstants;
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 javax.swing.*;
import javax.swing.JOptionPane;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
@ -58,7 +53,7 @@ import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import java.awt.*;
import java.awt.Component;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@ -75,8 +70,6 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import static com.fr.third.guava.base.Preconditions.checkArgument;
/**
* @author null
*/
@ -217,7 +210,13 @@ public class RemoteEnv extends AbstractEnv<RemoteEnvConfig> implements DesignAut
* @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
public boolean testServerConnectionWithOutShowMessagePane() throws Exception {
return testConnection(false, true, DesignerContext.getDesignerFrame());
try {
connectOnce();
return true;
} catch (Exception e) {
return false;
}
}
/**
@ -239,55 +243,15 @@ public class RemoteEnv extends AbstractEnv<RemoteEnvConfig> implements DesignAut
* @throws Exception 异常
*/
public boolean testConnectionWithOutRegisteServer(Component messageParentPane) throws Exception {
return testConnection(true, false, messageParentPane);
}
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")) {
try {
connectOnce();
return true;
} else {
if (ComparatorUtils.equals(res, EnvConstants.AUTH_ERROR)) {
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;
}
}
} catch (Exception e) {
JOptionPane.showMessageDialog(messageParentPane, Inter.getLocText("Datasource-Connection_failed"));
return false;
}
}
private void refreshHttpSProperty() {
if (getPath().startsWith(HTTPS_PREFIX) && System.getProperty(CERT_KEY) == null) {
DesignerEnvManager envManager = DesignerEnvManager.getEnvManager();

Loading…
Cancel
Save