Skip to content
This repository was archived by the owner on May 7, 2024. It is now read-only.
This repository was archived by the owner on May 7, 2024. It is now read-only.

private method in onRequestStart causes an internal server error when called from 127.0.0.1 but not localhost #16

@laserbyte

Description

@laserbyte

This works:

http://localhost:8080/explosion/hello.cfm

This does not:

http://127.0.0.1:8080/explosion/hello.cfm

OpenBD Internal Server Error
Need some help? Visit our manual http://openbd.org/manual/
The page you were executing caused an internal server error
Request /explosion/hello.cfm
File Trace  /jetty-openbd-3.1.0/webapps/openbd/explosion/hello.cfm
|
+-- /jetty-openbd-3.1.0/webapps/openbd/explosion/Application.cfc
Type    Internal
Tag Context CFQUERY (/jetty-openbd-3.1.0/webapps/openbd/explosion/Application.cfc, Line=43, Column=3)
|
+-- CFFUNCTION (/jetty-openbd-3.1.0/webapps/openbd/explosion/Application.cfc, Line=42, Column=2)
    |
    +-- CFSET (/jetty-openbd-3.1.0/webapps/openbd/explosion/Application.cfc, Line=37, Column=3)
        |
        +-- CFFUNCTION (/jetty-openbd-3.1.0/webapps/openbd/explosion/Application.cfc, Line=34, Column=2)
Source  
40:   </cffunction>
41:   <!--- ================================================================================================ --->
42:   <cffunction name="explode" returntype="boolean" output="false" access="private">
43:     <cfquery>
44:       SELECT COUNT(*) dummy FROM dual
^ Snippet from underlying CFML source
Stack Trace 
java.lang.AbstractMethodError
    at com.naryx.tagfusion.cfm.sql.cfSQLQueryData.execute(Unknown Source)
    at com.naryx.tagfusion.cfm.sql.cfSQLQueryData.runQuery(Unknown Source)
    at com.naryx.tagfusion.cfm.sql.cfQUERY.executeStatement(Unknown Source)
    at com.naryx.tagfusion.cfm.sql.platform.java.cfQueryImplSQL.render(Unknown Source)
    at com.naryx.tagfusion.cfm.sql.cfQUERY.render(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfTag.coreRender(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfTag.renderToString(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfFUNCTION.realRun(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfFUNCTION.run(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfFUNCTION.run(Unknown Source)
    at com.naryx.tagfusion.cfm.parser.script.userDefinedFunction.execute(Unknown Source)
    at com.naryx.tagfusion.cfm.parser.CFFunctionExpression.Eval(Unknown Source)
    at com.naryx.tagfusion.cfm.parser.runTime.run(Unknown Source)
    at com.naryx.tagfusion.cfm.parser.runTime.runExpression(Unknown Source)
    at com.naryx.tagfusion.cfm.parser.runTime.runExpression(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfSET.render(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfTag.coreRender(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfTag.renderToString(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfFUNCTION.realRun(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfFUNCTION.run(Unknown Source)
    at com.naryx.tagfusion.cfm.tag.cfFUNCTION.run(Unknown Source)
    at com.naryx.tagfusion.cfm.parser.script.userDefinedFunction.execute(Unknown Source)
    at com.naryx.tagfusion.cfm.engine.cfComponentData.invokeComponentFunction(Unknown Source)
    at com.naryx.tagfusion.cfm.engine.cfComponentData.invokeApplicationFunction(Unknown Source)
    at com.naryx.tagfusion.cfm.engine.cfSession.onRequestStart(Unknown Source)
    at com.naryx.tagfusion.cfm.engine.cfSession.onRequestStart(Unknown Source)
    at com.naryx.tagfusion.cfm.engine.cfEngine.service(Unknown Source)
    at com.naryx.tagfusion.cfm.cfServlet.service(Unknown Source)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:547)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1359)
    at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:77)
    at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:144)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330)
    at com.newatlanta.filters.SearchEngineFriendlyURLFilter.doFilter(Unknown Source)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:478)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:483)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:941)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:875)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
    at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
    at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
    at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:312)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
    at org.eclipse.jetty.server.Server.handle(Server.java:345)
    at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
    at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:919)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:582)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218)
    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:586)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:44)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
    at java.lang.Thread.run(Thread.java:722)

The datasource is a MySQL database running a dummy query for demonstration purposes.

Application.cfc

<cfcomponent name="Application" output="false" >
    <cfset this.name = "example" & Hash( GetCurrentTemplatePath() )>
    <cfset this.sessionManagement = "true">
    <cfset this.clientManagement = "false">
    <cfset this.scriptProtect = "false">
    <cfset this.datasource = "example" />

    <!---======================================================================================================--->
    <cffunction name="onApplicationStart" returntype="boolean" output="false">
        <cfreturn true>
    </cffunction>
    <!--- ================================================================================================ --->
    <cffunction name="onApplicationEnd" returnType="void" output="false">
        <cfargument name="ApplicationScope" required="true">
    </cffunction>
    <!--- ================================================================================================ --->
    <cffunction name="onSessionStart" returnType="void" output="false">
        <!--- This function is blank for a reason! --->
    </cffunction>
    <!--- ================================================================================================ --->
    <cffunction name="onSessionEnd" returnType="void" output="false">
        <cfargument name="SessionScope" required="true" />
        <cfargument name="ApplicationScope" required="true" />
    </cffunction>
    <!--- ================================================================================================ --->
    <cffunction name="onRequest" returntype="boolean" output="true">
        <cfargument name="targetPage" required="true">

        <cfinclude template="#ARGUMENTS.TargetPage#" />

        <cfreturn true>
    </cffunction>
    <!--- ================================================================================================ --->
    <cffunction name="onRequestStart" returntype="boolean" output="false">
        <cfargument name="targetPage" required="true">

        <cfset explode() />

        <cfreturn true>
    </cffunction>
    <!--- ================================================================================================ --->
    <cffunction name="explode" returntype="boolean" output="false" access="private">
        <cfquery>
            SELECT COUNT(*) dummy FROM dual
        </cfquery>
    </cffunction>
    <!--- ================================================================================================ --->
    <cffunction name="onRequestEnd" returntype="void" output="false">
        <cfargument name="targetPage" required="true">
    </cffunction>

</cfcomponent>

hello.cfm

hello world

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions