이 코드는 Application.cfm에 있습니다. (아마도 .cfc 여야하지만, 이것은 MX로 거슬러 올라가는 오래된 코드입니다) CF8 및 CF9에서 제대로 작동하는 데 사용되는 쿠키 내가 CF10 개발자 에디션을 사용하여 로컬 디렉토리로 옮겼습니다. 그리고 그 블록을 주석 처리하기 전에는 작동하지 않았습니다. 색인에 도달하면 오류가 발생합니다.세션 쿠키 및 Application.cfm
<!--- APPLICATION settings --->
<!--- 5/1/13 removed cookies temporarily
<cfif IsDefined("cfid")>
<cfcookie name="cfid" value="#cfid#" expires="NOW">
<cfcookie name="cftoken" value="#cftoken#" expires="NOW">
</cfif>--->
<!--- Define the application parameters--->
<cfapplication name="TFTAdmin" clientmanagement="Yes"
sessionmanagement="Yes"
setclientcookies="No"
sessiontimeout="#CreateTimeSpan('0','4','0','0')#"
applicationtimeout="#CreateTimeSpan('0','4','0','0')#">
<!--- Create cookies that disappear when the browser closes as to increase security --->
<cflock scope="session" type="readonly" timeout="5">
<cfcookie name="cfid" value="#session.cfid#">
<cfcookie name="cftoken" value="#session.cftoken#">
</cflock>
편집 :
The system has attempted to use an undefined value, which usually indicates a programming error, either in your code or some system code.
Null Pointers are another name for undefined values.
The error occurred in C:/ColdFusion10/cfusion/wwwroot/TFT/Application.cfm: line 3
1 : <!--- APPLICATION settings --->
2 : <cfif IsDefined("cfid")>
3 : <cfcookie name="cfid" value="#cfid#" expires="NOW">
4 : <cfcookie name="cftoken" value="#cftoken#" expires="NOW">
5 : </cfif>
이 Application.cfm의에서 현재 코드는이 파일에 더 많은 코드가있다 -하지만 관련이없는 것 같다.
감사합니다. 응용 프로그램 선언 다음에 놓아야 만합니다. 그렇지 않으면'session'이 정의되지 않았습니다. – Macness
@Macness 위의 답변이 잘못되었습니다. 'session'은 ColdFusion [범위 평가 순서] (http://help.adobe.com/ko_KR/ColdFusion/10.0/Developing/WSc3ff6d0ea77859461172e0811cbec09af4-7fdf.html)의 일부가 아닙니다. 따라서 원래의 조건부 조건과 위의 조건부 조건은 동일하지 않습니다. 따라서 코드는 오류가 아니지만 의도 한 작업을 수행하지는 못합니다. 내가 생각하는 바에 대한 내 대답을보십시오. – nosilleg
@nosilleg 어떻게 내 대답이 잘못 되었습니까? 문제는'isDefined()'는 세션 변수를 보지 않았기 때문에 scope evaluation order actual이 내 포인트를 증명합니다. –