[ 
https://issues.apache.org/jira/browse/ISIS-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16724245#comment-16724245
 ] 

Jörg Rade commented on ISIS-1927:
---------------------------------

With 1.16.2 when:
{code:java}
$ curl -H "Content-Type: application/json" -d @input.json -u jenkins:pass 
http://localhost:8080/restful/services/ife.cfg.vm.Checks/actions/checkNewEndpoints/invoke
 -o output.json{code}
where input json is:
{code:java}
{
"applicationName": {
"value": "SALOG"
},
"applicationVersion": {
"value": "3.12.5.10"
}
}{code}
 and Checks.checkNewEndpoints is:
{code:java}
@Action(semantics = SemanticsOf.SAFE)
@ActionLayout(cssClassFa = "bolt", describedAs = "Check if WS endpoints and JMS 
topics of new release exist")
public String checkNewEndpoints(
        @ParameterLayout(named = "Application Name") String appName,
        @ParameterLayout(named = "Application Version") String appVersion) {
    applicationReader.init();
    final Stage stage = stages.findOrCreate(Constants.PROD);
    final Application application = applications.findByName(appName);
    final Configuration oldConfig = 
configurations.importApplicationStage(application, stage);
    final Configuration newConfig = 
configurations.importApplicationVersion(application, appVersion);
    final ReleaseComparison dashboard = 
releaseComparisons.create(oldConfig.getRelease(), newConfig.getRelease());
    SortedSet<Endpoint> epList = 
serviceComparisons.checkNewEndpoints(dashboard);
    return toString(epList);
}{code}
then output.json is:
{code}
{
        "httpStatusCode": 500,
        "message": "objectAdapter must be a root adapter",
        "detail": {
                "className": "java.lang.IllegalArgumentException",
                "message": "objectAdapter must be a root adapter",
                "element": [
                        
"org.apache.isis.viewer.restfulobjects.rendering.util.OidUtils.getOidStr(OidUtils.java:52)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.util.OidUtils.getInstanceId(OidUtils.java:43)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.domainobjects.DomainObjectReprRenderer.getInstanceId(DomainObjectReprRenderer.java:250)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.domainobjects.DomainObjectReprRenderer.render(DomainObjectReprRenderer.java:160)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.Responses.ofOk(Responses.java:82)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.Responses.ofOk(Responses.java:63)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.service.conneg.ContentNegotiationServiceForRestfulObjectsV1_0.buildResponseTo(ContentNegotiationServiceForRestfulObjectsV1_0.java:105)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.service.conneg.ContentNegotiationServiceForRestfulObjectsV1_0.buildResponse(ContentNegotiationServiceForRestfulObjectsV1_0.java:86)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.service.conneg.ContentNegotiationServiceForRestfulObjectsV1_0.buildResponse(ContentNegotiationServiceForRestfulObjectsV1_0.java:228)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator$5.apply(RepresentationServiceContentNegotiator.java:157)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator$5.apply(RepresentationServiceContentNegotiator.java:154)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator.buildResponse(RepresentationServiceContentNegotiator.java:195)",
                        
"org.apache.isis.viewer.restfulobjects.rendering.service.RepresentationServiceContentNegotiator.actionResult(RepresentationServiceContentNegotiator.java:154)",
                        
"org.apache.isis.viewer.restfulobjects.server.resources.DomainResourceHelper.invokeActionUsingAdapters(DomainResourceHelper.java:379)",
                        
"org.apache.isis.viewer.restfulobjects.server.resources.DomainResourceHelper.invokeAction(DomainResourceHelper.java:351)",
                        
"org.apache.isis.viewer.restfulobjects.server.resources.DomainServiceResourceServerside.invokeAction(DomainServiceResourceServerside.java:263)",
                        "sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)",
                        
"sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)",
                        
"sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)",
                        "java.lang.reflect.Method.invoke(Method.java:498)",
                        
"org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:140)",
                        
"org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295)",
                        
"org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249)",
                        
"org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:236)",
                        
"org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:406)",
                        
"org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:213)",
                        
"org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:228)",
                        
"org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)",
                        
"org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)",
                        
"javax.servlet.http.HttpServlet.service(HttpServlet.java:790)",
                        
"org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:821)",
                        
"org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1685)",
                        
"org.apache.isis.viewer.restfulobjects.server.webapp.IsisTransactionFilterForRestfulObjects.doFilter(IsisTransactionFilterForRestfulObjects.java:50)",
                        
"org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)",
                        
"org.apache.isis.core.webapp.IsisSessionFilter.doFilter(IsisSessionFilter.java:341)",
                        
"org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)",
                        
"org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)",
                        
"org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)",
                        
"org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)",
                        
"org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)",
                        
"org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)",
                        
"org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)",
                        
"org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)",
                        
"org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)",
                        
"org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)",
                        
"org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)",
                        
"org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581)",
                        
"org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)",
                        
"org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)",
                        
"org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)",
                        
"org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1158)",
                        
"org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)",
                        
"org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)",
                        
"org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1090)",
                        
"org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)",
                        
"org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)",
                        
"org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)",
                        
"org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:119)",
                        
"org.eclipse.jetty.server.Server.handle(Server.java:517)",
                        
"org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:306)",
                        
"org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)",
                        
"org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:261)",
                        
"org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)",
                        
"org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:75)",
                        
"org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)",
                        
"org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)",
                        
"org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)",
                        
"org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)",
                        "java.lang.Thread.run(Thread.java:748)"
                ],
                "causedBy": null
        }
}{code}
Expected (and with 1.16.0 Actual) is: {code:json}
{
  "links" : [ ],
  "resulttype" : "scalarvalue",
  "result" : {
    "value" : "[SUCCESS] 
KNMS_ACON_AccountPayableInvoice:\tjmstopic:/KNMS::ACON::AccountPayableInvoice@\teventType=KNMS::ACON::AccountPayableInvoice,\tsharedState=true,\tsharedStateOrdering=publisher\n

[...]

[SUCCESS] http://esb.int.kn:8888/ws/kn-TruckerBooking-V1-VS\n[SUCCESS] 
http://esb.int.kn:8888/ws/kn-CarrierManagementTuma-V1-VS\n";,
    "links" : [ {
      "rel" : "urn:org.restfulobjects:rels/return-type",
      "href" : "http://localhost:8080/restful/domain-types/java.lang.String";,
      "method" : "GET",
      "type" : 
"application/json;profile=\"urn:org.restfulobjects:repr-types/domain-type\""
    } ],
    "extensions" : { }
  }
}
{code}
 

> Invoking an action returning a non-null Blob via RO results in exception
> ------------------------------------------------------------------------
>
>                 Key: ISIS-1927
>                 URL: https://issues.apache.org/jira/browse/ISIS-1927
>             Project: Isis
>          Issue Type: Bug
>    Affects Versions: 1.16.2
>            Reporter: Dan Haywood
>            Priority: Major
>             Fix For: 1.16.3
>
>
> Also as per Erik on users ml
> [https://lists.apache.org/thread.html/2055cf053e713d768c36d2cf25632c8bed74bf757a4be4d3ab540b05@%3Cusers.isis.apache.org%3E]
> the second issue he reports suggests that hitting an action returning a  
> non-null Blob via RO results in an exception in OidUtils. 
>  
> {code:java}
> public static String getOidStr(final ObjectAdapter objectAdapter) {
>   final Oid oid = objectAdapter.getOid();
>   if (!(oid instanceof RootOid)) {
>     throw new IllegalArgumentException("objectAdapter must be a root 
> adapter");
>   }
>   return oid.enStringNoVersion();
> }{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to