defaultdebugpagegenerator.java

来自「反向的AJAX。最大的特性是我们成为反向的Ajax。DWR1.x允许你用java」· Java 代码 · 共 513 行 · 第 1/2 页

JAVA
513
字号
                }            }            if (overloaded)            {                buffer.append("<br/><span class='warning'>(Warning: overloaded methods are not recommended. See <a href='#overloadedMethod'>below</a>)</span>\n");            }            // Print a warning if the method uses un-marshallable types            for (int j = 0; j < paramTypes.length; j++)            {                if (!converterManager.isConvertable(paramTypes[j]))                {                    buffer.append("<br/><span class='warning'>(Warning: No Converter for " + paramTypes[j].getName() + ". See <a href='#missingConverter'>below</a>)</span>\n");                }            }            if (!converterManager.isConvertable(method.getReturnType()))            {                buffer.append("<br/><span class='warning'>(Warning: No Converter for " + method.getReturnType().getName() + ". See <a href='#missingConverter'>below</a>)</span>\n");            }            // See also the call to getReasonToNotExecute() above            try            {                accessControl.assertIsDisplayable(creator, scriptName, method);            }            catch (SecurityException ex)            {                buffer.append("<br/><span class='warning'>(Warning: " + methodName + "() is excluded: " + ex.getMessage() + ". See <a href='#excludedMethod'>below</a>)</span>\n");            }            // We don't need to call assertExecutionIsPossible() because those            // checks should be done by assertIsDisplayable() above            // accessControl.assertExecutionIsPossible(creator, scriptName, method);            buffer.append("</li>\n");        }        buffer.append(BLANK);        buffer.append("</ul>\n");        buffer.append("<h2>Other Links</h2>\n");        buffer.append("<ul>\n");        buffer.append("<li>Back to <a href='" + root + "/'>class index</a>.</li>\n");        buffer.append("</ul>\n");        synchronized (scriptCache)        {            String output = (String) scriptCache.get(PathConstants.FILE_HELP);            if (output == null)            {                InputStream raw = getClass().getResourceAsStream(DwrConstants.PACKAGE + PathConstants.FILE_HELP);                if (raw == null)                {                    log.error(Messages.getString("DefaultProcessor.MissingHelp", PathConstants.FILE_HELP));                    output = "<p>Failed to read help text from resource file. Check dwr.jar is built to include html files.</p>";                }                else                {                    StringBuffer fileBuffer = new StringBuffer();                    BufferedReader in = new BufferedReader(new InputStreamReader(raw));                    while (true)                    {                        try                        {                            String line = in.readLine();                            if (line == null)                            {                                break;                            }                            fileBuffer.append(line);                            fileBuffer.append('\n');                        }                        catch (IOException ex)                        {                            fileBuffer.append(ex.toString());                            fileBuffer.append('\n');                            break;                        }                    }                    output = fileBuffer.toString();                }                scriptCache.put(PathConstants.FILE_HELP, output);            }            buffer.append(output);        }        buffer.append("</body></html>\n");        return buffer.toString();    }    /* (non-Javadoc)     * @see org.directwebremoting.DebugPageGenerator#generateInterfaceUrl(java.lang.String, java.lang.String)     */    public String generateInterfaceUrl(String root, String scriptName)    {        return root + interfaceHandlerUrl + scriptName + PathConstants.EXTENSION_JS;    }    /* (non-Javadoc)     * @see org.directwebremoting.DebugPageGenerator#generateEngineUrl(java.lang.String)     */    public String generateEngineUrl(String root)    {        return root + engineHandlerUrl;    }    /* (non-Javadoc)     * @see org.directwebremoting.DebugPageGenerator#generateLibraryUrl(java.lang.String, java.lang.String)     */    public String generateLibraryUrl(String root, String library)    {        return root + library;    }    /* (non-Javadoc)     * @see org.directwebremoting.DebugPageGenerator#getAvailableLibraries()     */    public Collection getAvailableLibraries()    {        if (availableLibraries == null)        {            availableLibraries = Collections.unmodifiableCollection(Arrays.asList(new String[] { utilHandlerUrl }));        }        return availableLibraries;    }    /**     * Accessor for the DefaultCreatorManager that we configure     * @param converterManager The new DefaultConverterManager     */    public void setConverterManager(ConverterManager converterManager)    {        this.converterManager = converterManager;    }    /**     * Accessor for the DefaultCreatorManager that we configure     * @param creatorManager The new DefaultConverterManager     */    public void setCreatorManager(CreatorManager creatorManager)    {        this.creatorManager = creatorManager;    }    /**     * Accessor for the security manager     * @param accessControl The accessControl to set.     */    public void setAccessControl(AccessControl accessControl)    {        this.accessControl = accessControl;    }    /**     * @param engineHandlerUrl the engineHandlerUrl to set     */    public void setEngineHandlerUrl(String engineHandlerUrl)    {        this.engineHandlerUrl = engineHandlerUrl;    }    /**     * @param utilHandlerUrl the utilHandlerUrl to set     */    public void setUtilHandlerUrl(String utilHandlerUrl)    {        this.utilHandlerUrl = utilHandlerUrl;    }    /**     * @param testHandlerUrl the testHandlerUrl to set     */    public void setTestHandlerUrl(String testHandlerUrl)    {        this.testHandlerUrl = testHandlerUrl;    }    /**     * Setter for the URL that this handler available on     * @param interfaceHandlerUrl the interfaceHandlerUrl to set     */    public void setInterfaceHandlerUrl(String interfaceHandlerUrl)    {        this.interfaceHandlerUrl = interfaceHandlerUrl;    }    /**     * The URL for the {@link EngineHandler}     */    protected String engineHandlerUrl;    /**     * The URL for the {@link UtilHandler}     */    protected String utilHandlerUrl;    /**     * The URL for the {@link UtilHandler}     */    protected String testHandlerUrl;    /**     * What URL is this handler available on?     */    protected String interfaceHandlerUrl;    /**     * How we convert parameters     */    protected ConverterManager converterManager = null;    /**     * How we create new beans     */    protected CreatorManager creatorManager = null;    /**     * The security manager     */    protected AccessControl accessControl = null;    /**     * We cache the script output for speed     */    protected final Map scriptCache = new HashMap();    /**     * For getAvailableLibraries() - just a RO Collection that currently returns     * only util.js, but may be expanded in the future.     */    private Collection availableLibraries = null;    /**     * 2 dots     */    private static final String PATH_UP = "..";    /**     * Empty string     */    public static final String BLANK = "";    /**     * The log stream     */    private static final Logger log = Logger.getLogger(DefaultDebugPageGenerator.class);}

⌨️ 快捷键说明

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