⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 raplajnlppagegenerator.java

📁 Rapla是一个灵活的多用户资源管理系统。它提供的一些功能有:日历GUI
💻 JAVA
字号:
/**
 * 
 */
package org.rapla.servletpages;

import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.rapla.components.util.IOUtil;

public class RaplaJNLPPageGenerator implements RaplaPageGenerator{
    
    private String getCodebase( HttpServletRequest request)  {
        StringBuffer codebaseBuffer = new StringBuffer();
        codebaseBuffer.append(!request.isSecure() ? "http://" : "https://");
        codebaseBuffer.append(request.getServerName());
        if (request.getServerPort() != (!request.isSecure() ? 80 : 443))
        {
           codebaseBuffer.append(':');
           codebaseBuffer.append(request.getServerPort());
        }
        codebaseBuffer.append(request.getContextPath());
        codebaseBuffer.append('/');
        return codebaseBuffer.toString();
    }

    private String getLibsJNLP(ServletContext context) throws java.io.IOException {
        StringBuffer buf = new StringBuffer();
        String base = context.getRealPath(".");
        java.io.File baseFile = new java.io.File(base);
        java.io.File[] files = IOUtil.getJarFiles(base,"webclient");
        for (int i=0;i<files.length;i++) {
          buf.append("\n<jar href=\".");
          buf.append(IOUtil.getRelativeURL(baseFile,files[i]));
          buf.append("\"");
          if (files[i].getName().indexOf("rapla") == 0) {
             buf.append(" main=\"true\"");
          }
          buf.append("/>");
       }
       return buf.toString();
    }
    
    protected List getProgramArguments() {
        List list = new ArrayList();
/*        list.add("-c");
        list.add("rapla?page=jnlp_http_auth.xconf");*/
        list.add("webstart");
        return list;
    }
    
    public void generatePage( ServletContext context, HttpServletRequest request, HttpServletResponse response ) throws IOException {
        java.io.PrintWriter out = response.getWriter();
        response.setContentType("application/x-java-jnlp-file;charset=utf-8");
        out.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
        out.println("<jnlp spec=\"1.0+\" codebase=\""+getCodebase( request) + "\">");
        out.println("<information>"); 
        out.println(" <title>Rapla</title>" );
        out.println(" <vendor>rapla.sourceforge.net (development started at Uni Bonn)</vendor>");
        out.println(" <homepage href=\"http://rapla.sourceforge.net\"/>");
        out.println(" <description>Resource Scheduling Application</description>");
        out.println(" <icon href=\"./webclient/logo.gif\"/> ");
        out.println(" <icon kind=\"splash\" href=\"./webclient/logo.gif\"/> ");
        out.println("</information>" );
        out.println("<resources>");
        out.println("  <j2se version=\"1.4+\"/>");
        out.println(getLibsJNLP(context) );
        out.println("</resources>" );
        out.println("<application-desc main-class=\"org.rapla.Main\">" );
        for (Iterator it =getProgramArguments().iterator(); it.hasNext(); ) { 
            out.println("  <argument>" + it.next() + "</argument> " );
        }
        out.println("</application-desc>");
        out.println("</jnlp>");
     }
    
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -