Browse Source

优化源码查看功能,当源码XML格式不合法不再报错,而是直接显示未格式化的XML源码;

jacky6024 8 years ago
parent
commit
c3c0e66f59

+ 1 - 0
urule-console/src/main/java/com/bstek/urule/console/EnvironmentProvider.java

@@ -25,6 +25,7 @@ import com.bstek.urule.console.servlet.RequestContext;
  */
 public interface EnvironmentProvider {
 	/**
+	 * @param context 请求上下文对象
 	 * @return 返回当前登录用户
 	 */
 	User getLoginUser(RequestContext context);

+ 12 - 6
urule-console/src/main/java/com/bstek/urule/console/servlet/frame/FrameServletHandler.java

@@ -98,14 +98,20 @@ public class FrameServletHandler extends RenderPageServletHandler{
 		path=Utils.decodeURL(path);
 		InputStream inputStream=repositoryService.readFile(path,null);
 		String content=IOUtils.toString(inputStream,"utf-8");
-		Document doc=DocumentHelper.parseText(content);
-		OutputFormat format=OutputFormat.createPrettyPrint();
-		StringWriter out=new StringWriter();
-		XMLWriter writer=new XMLWriter(out, format);
-		writer.write(doc);
 		inputStream.close();
+		String xml=null;
+		try{
+			Document doc=DocumentHelper.parseText(content);
+			OutputFormat format=OutputFormat.createPrettyPrint();
+			StringWriter out=new StringWriter();
+			XMLWriter writer=new XMLWriter(out, format);
+			writer.write(doc);
+			xml=out.toString();
+		}catch(Exception ex){
+			xml=content;
+		}
 		Map<String,Object> result=new HashMap<String,Object>();
-		result.put("content", out.toString());
+		result.put("content", xml);
 		writeObjectToJson(resp, result);
 	}