Ok, finally got it all working on Railo 3.3, but with one caveat, which has to do with a problem I was having before also. I use a custom SES interceptor which ColdBox currently throws a fit about, an issue which I fixed in my fork on github, but the issue has reared its head again now with BlogBox.
This part of ModuleService.cfc:
// Get name of SES Interceptor
SESInterceptor = getController().getInterceptorService().getSESInterceptor();
// Register module routing entry point pre-pended to routes
if( controller.settingExists(‘sesBaseURL’) AND len(mConfig.entryPoint) AND NOT find(":",mConfig.entryPoint)){
interceptorService.getInterceptor(SESInterceptor ,true).addModuleRoutes(pattern=mConfig.entryPoint,module=arguments.moduleName,append=false);
}
The return value of getSESInterceptor() is always SES, even when there is a custom interceptor set, so I added a couple of lines to get the right interceptor in InterceptorService.cfc:
// Check if this interceptor extends the default system SES interceptor
if (getComponentMetaData(thisInterceptor).extends.fullname eq ‘coldbox.system.interceptors.SES’) {
SESInterceptor = ListLast(getComponentMetaData(thisInterceptor).fullname, “.”);
} else {
SESInterceptor = “SES”;
}
return SESInterceptor;
This works great and returns the right interceptor name.
If I dump the value of SESinterceptor right after:
SESInterceptor = getController().getInterceptorService().getSESInterceptor();
I see my correct interceptor name, however…
When this line runs:
interceptorService.getInterceptor(SESInterceptor ,true).addModuleRoutes(pattern=mConfig.entryPoint,module=arguments.moduleName,append=false);
The value of the SESInterceptor argument to getInterceptor() is always “SES”, even though the return value from getSESInterceptor() is my custom interceptor name.
I can’t figure out why this is happening.
Right after the getSESInterceptor() call, SESInterceptor is my custom interceptor name, but by the time interceptorService.getInterceptor() runs, the value has become SES again.
So, to get this working with my custom interceptor, I had to modify ModuleService.cfc to have a hard-coded name to my custom SES interceptor, like so:
interceptorService.getInterceptor(‘customSESName’,true).addModuleRoutes(pattern=mConfig.entryPoint,module=arguments.moduleName,append=false);
In both places where it appears.
Other than that, I’m up and running on Railo now.