sml:PostRequest fails on HTTP Response Code 201

26 views
Skip to first unread message

Mark van Berkel

unread,
Jan 3, 2017, 12:22:01 PM1/3/17
to TopBraid Suite Users
Hi Team,

It looks like there is an issue with sml:PostRequest when the HTTP Response Code is 201 (Resource Created). sml:PostRequest expects only 200 as a valid response and when an API returns the a response with valid 201 status code the module gives a warning and error. 

I am calling the PostRequest in a SWP script using TBCME 5.2.1.  The following is an exception raised:

Exception in SWP Engine: org.topbraid.spin.swp.engine.SWPException: Failed to execute SPARQLMotion module
org.topbraid.spin.swp.engine.SWPException: Failed to execute SPARQLMotion module
at org.topbraid.spin.sparqlmotion.swp.SMModuleControlElement.run(SMModuleControlElement.java:113)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.addChildNodes(SWPEngine.java:301)
at org.topbraid.spin.swp.engine.control.internal.BindControlElement.run(BindControlElement.java:96)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.addChildNodes(SWPEngine.java:301)
at org.topbraid.spin.swp.engine.control.internal.GroupControlElement.run(GroupControlElement.java:20)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.addChildNodes(SWPEngine.java:301)
at org.topbraid.spin.swp.engine.control.internal.GroupControlElement.run(GroupControlElement.java:20)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.addChildNodes(SWPEngine.java:301)
at org.topbraid.spin.swp.engine.control.internal.GroupControlElement.run(GroupControlElement.java:20)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodesFromPrototype(SWPEngine.java:642)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:555)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.addChildNodes(SWPEngine.java:301)
at org.topbraid.spin.swp.engine.control.internal.IfControlElement.run(IfControlElement.java:25)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.addChildNodes(SWPEngine.java:301)
at org.topbraid.spin.swp.engine.control.internal.IfControlElement.run(IfControlElement.java:25)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.addChildNodes(SWPEngine.java:301)
at org.topbraid.spin.swp.engine.control.internal.LoadableControlElement.run(LoadableControlElement.java:84)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:560)
at org.topbraid.spin.swp.engine.SWPEngine.createNodes(SWPEngine.java:523)
at org.topbraid.spin.swp.engine.SWPEngine.run(SWPEngine.java:1212)
at org.topbraid.spin.swp.engine.XMLEngine.run(XMLEngine.java:105)
at org.topbraid.spin.swp.servlet.SWPServletUtil.runUncached(SWPServletUtil.java:822)
at org.topbraid.spin.swp.servlet.SWPServletUtil.run(SWPServletUtil.java:710)
at org.topbraidlive.swp.servlet.SWPServlet.run(SWPServlet.java:167)
at org.topbraidlive.swp.servlet.SWPServlet.run(SWPServlet.java:124)
at org.topbraidlive.swp.servlet.SWPServlet.run(SWPServlet.java:103)
at org.topbraidlive.swp.servlet.SWPServlet.doPost(SWPServlet.java:69)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.topbraid.auth.servlet.TBAuthEnabledServlet.service(TBAuthEnabledServlet.java:41)
at org.topbraid.eclipsex.servlet.TBHttpServlet.service(TBHttpServlet.java:155)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.HttpServiceRuntimeImpl$LegacyServlet.service(HttpServiceRuntimeImpl.java:1232)
at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
at org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:63)
at org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:98)
at org.eclipse.equinox.http.servlet.internal.HttpServiceRuntimeImpl.doDispatch(HttpServiceRuntimeImpl.java:372)
at org.eclipse.equinox.http.servlet.internal.servlet.ProxyServlet.service(ProxyServlet.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:363)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.server.Server.handle(Server.java:499)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.topbraid.spin.sparqlmotion.modules.SMException: 
Mark removed the JSON data about the resource created ...
at org.topbraidlive.sparqlmotion.modules.PostRequestModule.execute(PostRequestModule.java:146)
at org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.execute(ExecutionEngineImpl.java:203)
at org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.executeModule(ExecutionEngineImpl.java:169)
at org.topbraid.spin.sparqlmotion.engine.impl.ExecutionEngineImpl.execute(ExecutionEngineImpl.java:119)
at org.topbraid.spin.sparqlmotion.swp.SMModuleControlElement.run(SMModuleControlElement.java:76)
... 68 more


Holger Knublauch

unread,
Jan 3, 2017, 6:39:17 PM1/3/17
to topbrai...@googlegroups.com
Thanks for the report, we'll get this fixed for 5.3

Holger
--
You received this message because you are subscribed to the Google Group "TopBraid Suite Users", the topics of which include the TopBraid Suite family of products and its base technologies such as SPARQLMotion, SPARQL Web Pages and SPIN.
To post to this group, send email to topbrai...@googlegroups.com
---
You received this message because you are subscribed to the Google Groups "TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to topbraid-user...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages