Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7628123
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 31, 20262026-05-31T05:33:12+00:00 2026-05-31T05:33:12+00:00

I have an implicit setter within the init() method of a CFC. I have

  • 0

I have an implicit setter within the init() method of a CFC. I have observed (using Fusion Reactor, and, through error messages) that the simple call to setActive(false) ends up doing networking. I have no idea why ColdFusion would be doing so much work while setting this value using the implicit setters introduced with ColdFusion 9.

I am running the latest ColdFusion 9.01 with all the hotfix updates applied.

Do you know why ColdFusion would be going through all this trouble?

Thanks.

The Init Method of my CFC

/* Constructor
    @user_id A valid User_ID. If provided, the User will self-populate.
*/
public shared.models.objects.User function init (numeric user_id = -1) {
    super.init(argumentCollection=arguments);

    // Prepare structs required for 'adding' methods
    clearRoles();
    setActive(false);  // <--- THIS IS THE LINE 

    setUser_ID(user_id);

    settings = {};

    defaultLanguage = new shared.models.objects.Language();

    setLanguages( [defaultLanguage] );
    setLanguage( defaultLanguage );

    if (user_id == -1) {
        // Construct a 'blank' User
        // addRole('Contributor');
        setRequirePasswordChange(false);
    } else {
        // Attempt to populate a user
        populate();
    }

    return this;
}

The stack trace showing the networking

java.net.SocketTimeoutException: Read timed out
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
        at jrun.servlet.jrpp.ProxyEndpoint.readFully(ProxyEndpoint.java:581)
        at jrun.servlet.jrpp.ProxyEndpoint.readFully(ProxyEndpoint.java:573)
        at jrun.servlet.jrpp.ProxyEndpoint.readInt(ProxyEndpoint.java:591)
        at jrun.servlet.jrpp.ProxyEndpoint.readString(ProxyEndpoint.java:620)
        at jrun.servlet.jrpp.ProxyEndpoint.getHeader(ProxyEndpoint.java:762)
        at javax.servlet.http.HttpServletRequestWrapper.getHeader(HttpServletRequestWrapper.java:124)
        at javax.servlet.http.HttpServletRequestWrapper.getHeader(HttpServletRequestWrapper.java:124)
        at javax.servlet.http.HttpServletRequestWrapper.getHeader(HttpServletRequestWrapper.java:124)
        at com.intergral.fusionreactor.filter.surrogate.e.getHeader(FusionReactorServletRequestProxy.java:248)
        at coldfusion.runtime.CgiScope.resolve(CgiScope.java:221)
        at coldfusion.runtime.CgiScope.containsName(CgiScope.java:301)
        at coldfusion.runtime.CgiScope.search(CgiScope.java:334)
        at coldfusion.runtime.NeoPageContext.searchScopes(NeoPageContext.java:766)
        at coldfusion.runtime.NeoPageContext.findAttribute(NeoPageContext.java:638)
        at coldfusion.runtime.CfJspPage._get(CfJspPage.java:296)
        at coldfusion.runtime.CfJspPage._get(CfJspPage.java:283)
        at coldfusion.runtime.CfJspPage._get(CfJspPage.java:271)
        at cfUser2ecfc1728567179$funcINIT.runFunction(C:\web\project\projecttv\shared\models\objects\User.cfc:131)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:517)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:496)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:355)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2301)
        at coldfusion.tagext.lang.InvokeTag.doEndTag(InvokeTag.java:389)
        at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2723)
        at cfBuilder2ecfc1779563022$funcBUILDCFC.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\ioc\Builder.cfc:111)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:491)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:337)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360)
        at cfInjector2ecfc1868990138$funcBUILDINSTANCE.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\ioc\Injector.cfc:288)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:491)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:337)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360)
        at cfNoScope2ecfc139649912$funcGETFROMSCOPE.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\ioc\scopes\NoScope.cfc:31)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:491)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:337)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360)
        at cfInjector2ecfc1868990138$funcGETINSTANCE.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\ioc\Injector.cfc:262)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:517)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:496)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:355)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2301)
        at cfRequest2ecfc135332213$funcENSUREREQUIREDOBJECTSEXIST.runFunction(C:\web\project\projecttv\atvcms\interceptors\Request.cfc:76)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:517)
        at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:2547)
        at cfRequest2ecfc135332213$funcPREPROCESS.runFunction(C:\web\project\projecttv\atvcms\interceptors\Request.cfc:26)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:517)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:496)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:355)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2301)
        at coldfusion.tagext.lang.InvokeTag.doEndTag(InvokeTag.java:389)
        at cfInterceptorState2ecfc1253590739$funcINVOKER.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\web\context\InterceptorState.cfc:139)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:2582)
        at cfInterceptorState2ecfc1253590739$funcPROCESS.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\web\context\InterceptorState.cfc:86)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:491)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:337)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360)
        at cfInterceptorService2ecfc1842875288$funcPROCESSSTATE.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\web\services\InterceptorService.cfc:131)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:491)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:337)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360)
        at cfColdbox2ecfc1041943003$funcPROCESSCOLDBOXREQUEST.runFunction(C:\web\project\projecttv\lib\frameworks\coldbox35\system\Coldbox.cfc:208)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:491)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:337)
        at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360)
        at cfApplication2ecfc83985088$funcONREQUESTSTART.runFunction(C:\web\project\projecttv\atvcms\Application.cfc:149)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
        at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
        at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
        at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
        at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
        at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:491)
        at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:337)
        at coldfusion.runtime.AppEventInvoker.invoke(AppEventInvoker.java:88)
        at coldfusion.runtime.AppEventInvoker.onRequestStart(AppEventInvoker.java:258)
        at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:349)
        at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)
        at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40)
        at coldfusion.filter.PathFilter.invoke(PathFilter.java:94)
        at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70)
        at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
        at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38)
        at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46)
        at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
        at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
        at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62)
        at coldfusion.CfmServlet.service(CfmServlet.java:200)
        at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
        at jrun.servlet.FilterChain.doFilter(FilterChain.java:86)
        at com.intergral.fusionreactor.filter.FusionReactorFilter.c(FusionReactorFilter.java:428)
        at com.intergral.fusionreactor.filter.FusionReactorFilter.d(FusionReactorFilter.java:262)
        at com.intergral.fusionreactor.filter.FusionReactorFilter.doFilter(FusionReactorFilter.java:171)
        at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
        at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
        at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
        at jrun.servlet.FilterChain.doFilter(FilterChain.java:94)
        at jrun.servlet.FilterChain.service(FilterChain.java:101)
        at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
        at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
        at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
        at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
        at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)
        at jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)
        at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
        at jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)
        at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-31T05:33:12+00:00Added an answer on May 31, 2026 at 5:33 am

    I am encountering the same problem. I believe I can add something to this but ultimately I think there is a CF defect here which I’ll try to elaborate on.

    First notice in the stack trace this:

        at coldfusion.runtime.CgiScope.resolve(CgiScope.java:221)
        at coldfusion.runtime.CgiScope.containsName(CgiScope.java:301)
        at coldfusion.runtime.CgiScope.search(CgiScope.java:334)
        at coldfusion.runtime.NeoPageContext.searchScopes(NeoPageContext.java:766)
        at coldfusion.runtime.NeoPageContext.findAttribute(NeoPageContext.java:638)
    

    When ColdFusion tries to resolve an unscoped variable, it will work its way up through the scope order of precedence testing each scope. If it gets all the way to CGI scope, the CF server attempts to ask the webserver connector for the CGI info in the Request’s Header. In turn, the connector attempts to read from the connector handle that’s holding on the TCP connection back to the browser. The network connection you are seeing in this posts original message may be the connector attempting to gather some of the CGI properties from the browser over TCP.

    If the browser connection is no longer active, say the user closed the browser, clicked elsewhere, or there is a network interruption, then that TCP connection may be “stale“. In that case, you will see a stack trace in the logs like this with the main message being “**error Error while reading header “

    03/06 13:45:52 error Error while reading header <headername>
    java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    ...
    at coldfusion.runtime.CgiScope.resolve(CgiScope.java:221)
    at coldfusion.runtime.CgiScope.containsName(CgiScope.java:301)
    at coldfusion.runtime.CgiScope.search(CgiScope.java:334)
    

    ColdFusion will do a scope look up when using code like isdefined(‘myUnscopedVar’) for example. If it gets all the way to CGI, then it will ask the connector for the header called myUnscopedVar. If the browser connection is gone, then the logs will show ” error Error while reading header myUnscopedVar “

    The way to avoid that is to use structKeyExists in all places you would use isDefined.

    More details found in these related blog entries:

    • http://corfield.org/blog/index.cfm/do/blog.entry/entry/isDefined_vs_structKeyExists

    • http://www.coldfusionmuse.com/index.cfm/2009/8/6/examining.isDefined

    • http://www.mail-archive.com/cf-talk@houseoffusion.com/msg196119.html

    If you search for the error message “error Error while reading header” you will actually get a lot of false positives in the search results because ColdFusion’s CFSAVECONTENT tag is implemented as a CF custom tag stored in WEB-INF, and it does something similar that has the same effect of isDefined(“anUnscopedVar”) in the way it captures the generated content. The built-in CF Exception handler makes use of cfsavecontent when trying to pretty up exceptions for display, so it traps the underlying application exception, tries to pretty it up, but hits the “error Error while reading header” issue, and instead of seeing the original application exception, you get this header error which masks the true issue.

        error Error while reading header S_UNABLE
    java.net.SocketTimeoutException: Read timed out
        at java.net.SocketInputStream.socketRead0(Native Method)
              ...
        at coldfusion.runtime.CgiScope.resolve(CgiScope.java:221)
        at coldfusion.runtime.CgiScope.containsName(CgiScope.java:301)
        at coldfusion.runtime.CgiScope.search(CgiScope.java:334)
              ...
        at cfsavecontent2ecfm1472308084.runPage(E:\cf9_final\cfusion\wwwroot\WEB-INF\cftags\savecontent.cfm:11)
              ...
        at cfexception_en2exml1502993924.runPage(D:\JRun4\servers\cfusion\cfusion.ear\cfusion.war\WEB-INF\exception\exception_en.xml:52)
              ...
        at cfdetail2ecfm1809038875.runPage(D:\JRun4\servers\cfusion\cfusion.ear\cfusion.war\WEB-INF\exception\detail.cfm:35)
              ...
        at cfApplicationException2ecfm797577125.runPage(D:\JRun4\servers\cfusion\cfusion.ear\cfusion.war\WEB-INF\exception\coldfusion\runtime\ApplicationException.cfm:2)
    

    Again the conclusion there is that if the browser connection has been dropped, then
    your code may show the “reading header” error when doing a CGI lookup either by intention or because of using isDefined on an unscoped variable name.

    So that’s just some related background information. This issue intersects with the ORM issue in this thread.

    I have found that in ColdFusion 9.01, sometimes calls to implicit setters causes ColdFusion to try to resolve the setter method as though it were a property, and it will look into the CGI scope to try to find it.

    I have the following entity shown here (partly):

    component persistent="true" table="myTable" output="false" extends="myBaseClass" {
    property name="myProperty" column="myProperty" type="date" ormtype="timestamp";
    

    Notice that it extends myBaseClass, which is shown (partly) here:

    component {
    public void function doSomething(){
        if (hasProperty('myProperty'))
            setMyProperty(now());
    }
    

    On some occasions when a template is requested which uses the entity, the template request appears to hang in the browser indefinitely with address bar spinning. Later when viewing the logs, I would find a related entry for the request showing the “error while reading header”.

                    03/06 13:45:52 error Error while reading header SETMYPROPRTY
                java.net.SocketTimeoutException: Read timed out
                at java.net.SocketInputStream.socketRead0(Native Method)
                ...
                at coldfusion.runtime.CgiScope.resolve(CgiScope.java:221)
                at coldfusion.runtime.CgiScope.containsName(CgiScope.java:301)
                at coldfusion.runtime.CgiScope.search(CgiScope.java:334)
                ...                
                at cfmybaseclass2ecfc1915167844$funcDOSOMETHING.runFunction(X:\MyApp\myBaseClass.cfc:8)
                ...                
                at coldfusion.orm.hibernate.HibernateEventHandler.onFlushDirty(HibernateEventHandler.java:130)
                ...                
                at coldfusion.orm.hibernate.HibernatePersistenceManager.onCommit(HibernatePersistenceManager.java:950)
                ...
                at cfsomecomp2ecfc1707726523$funcRUN.runFunction(X:\MyApp\SomeComp.cfc:131)
    

    This stack trace tells me that ColdFusion was trying to resolve an implicit setter and tried to find it in the CGI scope by asking the connector for an HTTP request header of the same name.

    To me, trying to resolve an implicit getter by searching the CGI scope for the Request Header seems like a ColdFusion defect.

    Opinions?

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a generic class that I'm trying to implement implicit type casting for.
Have you ever seen any of there error messages? -- SQL Server 2000 Could
All user variables have an implicit coercibility value what does that mean? does that
I have a class that takes an implicit parameter which is used by functions
I have a method that transfers data from one database to another and in
Hi I have this error : Implicit coercion of a value of type X
I just have a question regarding SimpleJSON's documentation. Is it implicit understood that functions
Checkboxes in HTML forms don't have implicit labels with them. Adding an explicit label
I have an implicit scalar field defined in 2D, for every point in 2D
I was wondering why shared_ptr doesn't have an implicit constructor. The fact it doesn't

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.