123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183 |
- <%@ page contentType="text/html;charset=UTF-8" %>
- <%@ page import="java.io.File,java.io.InputStream,java.io.FileInputStream,java.util.Properties" %>
- <jsp:useBean id="jnlpConfigCache" scope="application" class="java.util.Properties"/>
- <%
-
-
- String versionFile = "jnlp.properties" ;
- String jnlpPrev ="eas" ;
- String jnlpExt = ".jnlp" ;
-
-
- //String configDir = System.getProperty("portal.config");
- String configDir = System.getProperty("EAS_HOME") + "/server/properties/" ; //jnlp move out
-
-
- if(configDir == null){
- throw new RuntimeException("cann't find the portalConfig file!");
- }
-
- File configFile = new File(configDir);
- if(configFile.exists()){
- configDir = configFile.getAbsolutePath()+"/"; //dir should be under properties
- }else{
- throw new RuntimeException("cann't find the config file!");
- }
-
- //get file from jnlp.properties
- String localDir = configDir;//getServletConfig().getServletContext().getRealPath("/");
- //System.out.println(localDir);
- String jnlpFileName = "";
- //no portal,deploy stand-alone
- boolean standAlone = false ;
- //support Eas multi client switch from one to another version,for example 5.0->5.1
- boolean enableVerSwitch = false ;
- //allow to backup eas client max cout.
- int maxVerCopyCount = 2 ;
- String jnlpVersion = "5.1.0.0" ;
- String silentJnlp = "false";
- String enableCache = "true";
-
-
- //only read once after system start
- //added by linhh on 2006.7.31
- String refreshCache= request.getParameter("refreshCache");
- if(refreshCache == null )
- {
- refreshCache = "false";
- }
-
-
- if(jnlpConfigCache == null || jnlpConfigCache.size()==0 || "true".equalsIgnoreCase(refreshCache))
- {
- File versionFileHandler = new File(localDir,versionFile);
- if(versionFileHandler.exists()){
- try{
- InputStream is = new FileInputStream(versionFileHandler);
- Properties prop = new Properties();
- prop.load(is);
- jnlpVersion = prop.getProperty("version");
- standAlone = new Boolean(prop.getProperty("stand_alone")).booleanValue();
- enableVerSwitch = new Boolean(prop.getProperty("enableVerSwitch")).booleanValue();
- silentJnlp = prop.getProperty("silentJnlp");
- enableCache = prop.getProperty("enableCache");
- try
- {
- maxVerCopyCount = Integer.parseInt(prop.getProperty("maxVerCopyCount"));
- }
- catch(NumberFormatException e)
- {
- maxVerCopyCount = 1 ;
- }
-
- if(jnlpVersion != null && !"".equals(jnlpVersion))
- {
- String version = jnlpVersion.replace('.','_');
- jnlpFileName = jnlpPrev + "_" + version + jnlpExt ;
-
- }
- else
- {
- jnlpFileName = jnlpPrev + jnlpExt ;
- }
- is.close() ;
-
-
- //added by linhh on 2006.7.31
- jnlpConfigCache.put("version",(jnlpVersion==null?"5.1.0.0":jnlpVersion));
- jnlpConfigCache.put("stand_alone",new Boolean(standAlone).toString());
- jnlpConfigCache.put("enableVerSwitch",new Boolean(enableVerSwitch).toString());
- jnlpConfigCache.put("maxVerCopyCount",new Integer(maxVerCopyCount).toString());
- jnlpConfigCache.put("silentJnlp",silentJnlp);
- jnlpConfigCache.put("enableCache",enableCache);
-
-
- }catch(Exception e){
- e.printStackTrace();
-
- jnlpFileName = jnlpPrev + jnlpExt ;
- }
- }
- else
- {
- //System.out.println("no version");
- jnlpFileName = jnlpPrev + jnlpExt ;
- }
-
- }
- else
- {
-
- //added by linhh on 2006.7.31
- System.out.println("get jnlp config from cache.");
- Properties prop = jnlpConfigCache;
-
- jnlpVersion = prop.getProperty("version");
- standAlone = new Boolean(prop.getProperty("stand_alone")).booleanValue();
- enableVerSwitch = new Boolean(prop.getProperty("enableVerSwitch")).booleanValue();
- silentJnlp = prop.getProperty("silentJnlp");
- enableCache = prop.getProperty("enableCache");
- try
- {
- maxVerCopyCount = Integer.parseInt(prop.getProperty("maxVerCopyCount"));
- }
- catch(NumberFormatException e)
- {
- maxVerCopyCount = 1 ;
- }
-
- if(jnlpVersion != null && !"".equals(jnlpVersion))
- {
- String version = jnlpVersion.replace('.','_');
- jnlpFileName = jnlpPrev + "_" + version + jnlpExt ;
-
- }
- else
- {
- jnlpFileName = jnlpPrev + jnlpExt ;
- }
-
-
- }
-
- String jnlpFileNameParam = request.getParameter("jnlpFileName") ;
- if(jnlpFileNameParam != null && !"null".equalsIgnoreCase(jnlpFileNameParam))
- {
- //request param highest prior.
- jnlpFileName = jnlpFileNameParam ;
-
- }
-
- String switchCreateJnlpFile = "switch";
- if(standAlone)
- {
- switchCreateJnlpFile +="_noPortal.jsp";
- }
- else
- {
- switchCreateJnlpFile +=".jsp";
- }
-
- localDir = System.getProperty("portal.config");
- File localFile = new File(localDir);
- if(localFile.exists())
- {
- localDir = localFile.getParentFile().getAbsolutePath()+"/";
- }else
- {
- throw new RuntimeException("cann't find the config file!");
- }
-
- %>
- <jsp:forward page="<%=switchCreateJnlpFile%>">
- <jsp:param name="jnlpFileName" value="<%=jnlpFileName%>"/>
- <jsp:param name="jnlpVersion" value="<%=jnlpVersion%>"/>
- <jsp:param name="enableVerSwitch" value="<%=(new Boolean(enableVerSwitch)).toString()%>"/>
- <jsp:param name="maxVerCopyCount" value="<%=(new Integer(maxVerCopyCount)).toString()%>"/>
- <jsp:param name="silentJnlp" value="<%=silentJnlp%>"/>
- <jsp:param name="localDir" value="<%=localDir%>"/>
- <jsp:param name="enableCache" value="<%=enableCache%>"/>
- </jsp:forward>
|