Hi,

I have to communicate to LoopiaAPI with XML-RPC over HTTPS. I have run
a local test to see if it is possible first. My set up:

- Lap top
- M$ Vista
-  Open Desktop Server v 2.0.1

My impression after the test I done below is that cfxmlprc is not
supported on GAE and if I use it on Standard Edition Jetty the
simplest solution is to use Tunnelier (like cfmail before ssl and tls
was supported..)

TEST CODE:

<cfset strUrl = "åland.se" />

<!--- Create a Java URL. CFXMLRPC--->
<cfset jUrl = CreateObject( "java", "java.net.IDN" ).toASCII(strUrl) /
>

<cfset myarray = ['user','password','#jUrl#']>

<cfxmlrpc server="https://api.loopia.se/RPCSERV"; method="domainIsFree"
params="#myarray#">

<cfdump var="#XMLRPC#">

First run with Standard Engine:

with HTTPS

xmlrpc
struct
error   Failed to read server's response: https
method  domainIsFree
server  https://api.loopia.se/RPCSERV
success NO

Second run with Standard Engine

now with HTTP:

xmlrpc
struct
error   HTTP server returned unexpected status: Found
method  domainIsFree
server  http://api.loopia.se/RPCSERV
success NO


First run with GAE as run time engine (over HTTPS):

Big Error:

java.lang.StringIndexOutOfBoundsException: String index out of range:
-1
        at java.lang.String.substring(Unknown Source)
        at com.naryx.tagfusion.cfx.cfCFX.defaultParameters(Unknown Source)
        at com.naryx.tagfusion.cfm.tag.cfParseTag.createTag(Unknown Source)
        at com.naryx.tagfusion.cfm.tag.cfParseTag.determineCFtag(Unknown
Source)
        at com.naryx.tagfusion.cfm.tag.cfParseTag.readTag(Unknown Source)
        at com.naryx.tagfusion.cfm.tag.cfParseTag.readTag(Unknown Source)
        at com.naryx.tagfusion.cfm.file.cfFile.readFile(Unknown Source)
        at com.naryx.tagfusion.cfm.file.cfFile.(Unknown Source)
        at
com.naryx.tagfusion.cfm.file.cfFileEncoding.findProcessingDirective(Unknown
Source)
        at com.naryx.tagfusion.cfm.file.cfFileEncoding.init(Unknown Source)
        at com.naryx.tagfusion.cfm.file.cfFileEncoding.init(Unknown Source)
        at com.naryx.tagfusion.cfm.file.cfFileEncoding.init(Unknown Source)
        at com.naryx.tagfusion.cfm.file.cfFileEncoding.(Unknown Source)
        at com.naryx.tagfusion.cfm.file.cfFile.(Unknown Source)
        at com.naryx.tagfusion.cfm.file.cfmlFileCache._getCfmlFile2(Unknown
Source)
        at com.naryx.tagfusion.cfm.file.cfmlFileCache._getCfmlFile(Unknown
Source)
        at com.naryx.tagfusion.cfm.file.cfmlFileCache.getCfmlFile(Unknown
Source)
        at com.naryx.tagfusion.cfm.engine.cfSession.getFile(Unknown Source)
        at com.naryx.tagfusion.cfm.engine.cfSession.getUriFile(Unknown
Source)
        at com.naryx.tagfusion.cfm.engine.cfSession.getRequestFile(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:717)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
511)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1166)
        at
com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:
35)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:
58)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:
43)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:
122)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:
94)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:
388)
        at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:
216)
        at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:
182)
        at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:
765)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
418)
        at
com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:
70)
        at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
152)
        at com.google.appengine.tools.development.JettyContainerService
$ApiProxyHandler.handle(JettyContainerService.java:351)
        at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
152)
        at org.mortbay.jetty.Server.handle(Server.java:326)
        at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
542)
        at org.mortbay.jetty.HttpConnection
$RequestHandler.headerComplete(HttpConnection.java:923)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
        at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:
409)
        at org.mortbay.thread.QueuedThreadPool
$PoolThread.run(QueuedThreadPool.java:582)

-- 
official tag/function reference: http://openbd.org/manual/
 mailing list - http://groups.google.com/group/openbd?hl=en

Reply via email to