I think you're on the right track, although it ultimately still fails to
register the CFC. For instance, if, in the Application.cfc, I use the
absolute path (or relative path) to the directory in which the REST CFCs
are located:

this.restSettings.cfcLocation = "C:\inetpub\wwwroot\API";
this.restSettings.skipCFCWithError = true;

I get this error when I try to register the REST Directory in the
Administrator:

Error registering REST service. Please ensure that you have entered a
proper mapping and path.
Application restApp could not be initialized.
Reason: Missing dependency for method public java.lang.String
api.Connector.connect(java.lang.String,java.lang.Object[]) throws
coldfusion.xml.rpc.CFCInvocationException at parameter at index 1

However, if I use a path that I know doesn't have any REST-enabled CFCs
("C:\fnord"), I get a very helpful (if a little verbose) error message with
exactly what I expect to see:

Error registering REST service. Please ensure that you have entered a
proper mapping and path.
Application restApp could not be initialized.
Reason: The application does not contain any rest enabled CFCs.
The application does not contain any rest enabled CFCs.

What this says to me is that CF finds exactly what it's looking for
traversing the directory I give it, but there's something deeper that's
interfering with the proper registration.

And, finally, I tried one other thing - I copied the /API directory and
called it /siesta, and changed the references to the directory in its
Application.cfc. I then tried registering the REST services through the
Administrator as well as programmatically, but received the same "Missing
dependency..." error above.

- Jim


On Tue, Jan 15, 2013 at 4:31 PM, AJ Mercer <ajmer...@gmail.com> wrote:

>
> when you tried to register a different ReST app,
> did you take the old one out of the rest search path?
>     this.restsettings.cfclocation
>
> Or try this
>     this.restsettings.skipCFCWithError=true
>
>
>
> On 16 January 2013 03:35, Jim Campbell <j...@inomi.com> wrote:
>
> >
> > Hi all -
> >
> > I've got some very strange errors in CF10, and I'm not sure what's going
> > on. Basically, it's like this... I'm writing a REST API using CF10's
> native
> > REST functionality. No significant problems at all during development
> over
> > the last couple of weeks, but an hour or so ago, it stopped returning any
> > data whatsoever.
> >
> > The paths resolve if I request them from a browser (no 404s or 500s or
> > other strangeness), the underlying functions and data structures are
> > working and available; one function returns some info from an
> > application-scoped struct - dumping that struct in a CFM works fine.
> > Various restarts (service, webserver, applicationStop()) don't fix
> > anything. I'm running CF 10.0.7 (as of this morning!) on Win7/IIS6. I
> don't
> > think the OS/Web server are contributing factors, though, because,
> looking
> > at exception.log, I see this dump from when a REST request was made (full
> > error stack follows, continued afterwards):
> >
> > "Error","ajp-bio-8012-exec-4","01/15/13","12:59:59",,"An error occurred
> > while initializing the REST application restApp : null. "
> > com.sun.jersey.spi.inject.Errors$ErrorMessagesException
> > at com.sun.jersey.spi.inject.Errors.processErrorMessages(Errors.java:170)
> >  at com.sun.jersey.spi.inject.Errors.postProcess(Errors.java:136)
> > at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:199)
> >  at
> >
> >
> com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:771)
> > at
> >
> >
> com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:766)
> >  at
> >
> >
> com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:488)
> > at
> >
> >
> com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:318)
> >  at
> >
> >
> com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:609)
> > at
> >
> >
> com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:210)
> >  at
> >
> >
> com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:373)
> > at
> >
> >
> com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:556)
> >  at
> >
> >
> coldfusion.rest.servlet.CFRestServlet.initRestApplication(CFRestServlet.java:152)
> > at coldfusion.rest.servlet.CFRestServlet.invoke(CFRestServlet.java:391)
> >  at coldfusion.rest.servlet.RestFilter.invoke(RestFilter.java:58)
> > at coldfusion.filter.LicenseFilter.invoke(LicenseFilter.java:30)
> >  at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:94)
> > at
> >
> >
> coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28)
> >  at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38)
> > at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22)
> >  at coldfusion.rest.servlet.CFRestServlet.invoke(CFRestServlet.java:356)
> > at coldfusion.rest.servlet.CFRestServlet.service(CFRestServlet.java:347)
> >  at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
> > at
> coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89)
> >  at
> >
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
> > at
> >
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> >  at
> >
> >
> coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42)
> > at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)
> >  at
> >
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
> > at
> >
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
> >  at
> >
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
> > at
> >
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
> >  at
> >
> >
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
> > at
> >
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
> >  at
> >
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
> > at
> > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
> >  at
> >
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
> > at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:414)
> >  at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:204)
> > at
> >
> >
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)
> >  at
> >
> >
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:298)
> > at
> >
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> >  at
> >
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> > at java.lang.Thread.run(Thread.java:662)
> >
> > Obviously, something not happy somewhere inside Jersey (which handles the
> > REST aspect of CF). So, I get the bright idea to remove and re-add my
> REST
> > application through the CF Admin, and I get this message:
> >
> > Error registering REST service. Please ensure that you have entered a
> > proper mapping and path.
> > Application restApp could not be initialized.
> > Reason: Missing dependency for method public java.lang.String
> > api.Connector.connect(java.lang.String,java.lang.Object[]) throws
> > coldfusion.xml.rpc.CFCInvocationException at parameter at index 1
> >
> > <sad_trombone/> I try registering an entirely different REST app, but I
> get
> > the same message. I'm tempted to dump this and just go with PowerNap or
> the
> > like if there isn't some under-the-hood tweaking that I can't do. A quick
> > scan doesn't show any obvious Jersey config files - any ideas? Am I
> missing
> > something obvious?
> >
> > - Jim
> >
> >
> >
>
> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:353909
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

Reply via email to