Indeed, it does mean that.
You need to pull down the latest version of Isis (using "git pull") and
rebuild that instead ("mvn clean install").
You then need to make sure your myapp is running against the latest Isis
snapshot (x.y.0-SNAPSHOT), rather than the released (x.x.0) version. You
can do that by editing the pom.xml; check out the
examples/application/quickstart_wicket_restful_jdo/pom.xml (this is what
your myapp was originally generated from). Note that the versions
One other thing while I remember... if you are running with your own myapp,
then the WEB-INF/web.xml has changed slightly... there is now a new filter,
IsisTransactionFilterForRestfulObjects. Again, look at
examples/application/quickstart_wicket_restful_jdo/webapp/src/main/webapp/WEB-INF/web.xml.
Let me know if you get stuck
Dan
On 29 July 2013 20:05, Bhargav Golla <[email protected]> wrote:
> Tried mvn clean install -DskipTests and then mvn jetty:run from
> myapp/webapp. Then tried updating description of a ToDo. Still same error.
> Does this mean that I haven't rebuilt the code properly?
>
> Bhargav Golla
> Developer. Freelancer.
> B.E (Hons.) Computer Science
> BITS-Pilani
> Github <http://www.github.com/bhargavgolla> |
> LinkedIN<http://www.linkedin.com/in/bhargavgolla>
> | Website <http://www.bhargavgolla.com/>
>
>
> On Tue, Jul 30, 2013 at 12:26 AM, Bhargav Golla
> <[email protected]>wrote:
>
>> By rebuild, I hope you are asking me to do a "mvn clean package" in the
>> myapp directory.
>> Tried that and it is failing tests with an error " Failed to execute goal
>> org.apache.maven.plugins:maven-surefire-plugin:2.5:test (default-test) on
>> project myapp-integtests: There are test failures." Any help?
>>
>> Bhargav Golla
>> Developer. Freelancer.
>> B.E (Hons.) Computer Science
>> BITS-Pilani
>> Github <http://www.github.com/bhargavgolla> |
>> LinkedIN<http://www.linkedin.com/in/bhargavgolla>
>> | Website <http://www.bhargavgolla.com/>
>>
>>
>> On Mon, Jul 29, 2013 at 6:38 PM, Dan Haywood <
>> [email protected]> wrote:
>>
>>> Hi Bhargav,
>>> OK, committed some fixes this morning, along with tests
>>>
>>> Please do a rebuild and let me know how you get on.
>>>
>>> Cheers
>>> Dan
>>>
>>>
>>>
>>>
>>> On 28 July 2013 20:30, Bhargav Golla <[email protected]> wrote:
>>>
>>>> Hi Dimuthu,
>>>>
>>>> It isn't working too. Tried updating the description also. Not working
>>>> either.
>>>>
>>>> Bhargav Golla
>>>> Developer. Freelancer.
>>>> B.E (Hons.) Computer Science
>>>> BITS-Pilani
>>>> Github <http://www.github.com/bhargavgolla> |
>>>> LinkedIN<http://www.linkedin.com/in/bhargavgolla>
>>>> | Website <http://www.bhargavgolla.com/>
>>>>
>>>>
>>>> On Sat, Jul 27, 2013 at 1:39 PM, DImuthu Upeksha <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Bhargav,
>>>>>
>>>>> In your issue of { "value": "10/22/2013" }, hope you want to pass a
>>>>> date. Try { "value": "20131022" }. ({ "value": "YYYYMMDD" }) It
>>>>> worked for me.
>>>>>
>>>>> Thnx
>>>>> Dimuthu
>>>>>
>>>>>
>>>>>
>>>>> On Fri, Jul 26, 2013 at 10:35 AM, Bhargav Golla <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi Dan/Maurizio
>>>>>>
>>>>>> Any help with the error I shared?
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> Bhargav Golla
>>>>>> Developer. Freelancer.
>>>>>> B.E (Hons.) Computer Science
>>>>>> BITS-Pilani
>>>>>> Github <http://www.github.com/bhargavgolla> |
>>>>>> LinkedIN<http://www.linkedin.com/in/bhargavgolla>
>>>>>> | Website <http://www.bhargavgolla.com/>
>>>>>>
>>>>>>
>>>>>> On Wed, Jul 24, 2013 at 10:31 PM, Bhargav Golla <
>>>>>> [email protected]>wrote:
>>>>>>
>>>>>> >
>>>>>> >
>>>>>> > On Wed, Jul 24, 2013 at 1:14 PM, Dan Haywood <
>>>>>> [email protected]
>>>>>> > > wrote:
>>>>>> >
>>>>>> >> Hi Bhargav,
>>>>>> >> sorry not to get back to you sooner.
>>>>>> >>
>>>>>> >> couple of things:
>>>>>> >> 1. the PUT resource on the object (RO spec 14.2) is for updating
>>>>>> ALL
>>>>>> >> properties, not just a single one.
>>>>>> >> 2. the "complete" property is ALWAYS disabled (you can see that
>>>>>> from the
>>>>>> >> code [1], and from the arguments map in the representation[2]
>>>>>> >> 3. notwithstanding, I think there's a bug in the RO viewer. I
>>>>>> tried
>>>>>> >> several different formats for the body [3], [4], [5], but got the
>>>>>> same
>>>>>> >> error in each case [6]
>>>>>> >>
>>>>>> >> So, if you want to raise a ticket for this, then either go ahead
>>>>>> and fix
>>>>>> >> it, or wait for me to do so...
>>>>>> >>
>>>>>> > Created an issue [1]. Will try to fix it.
>>>>>> >
>>>>>> >>
>>>>>> >> In the meantime, you could workaround by doing a PUT to each of the
>>>>>> >> individual property resources (per 16.2 of the spec); I believe
>>>>>> this is
>>>>>> >> working fine.
>>>>>> >>
>>>>>> > I am getting a 500 now that says that "does not represent map" when
>>>>>> a make
>>>>>> > a request like [2]. Any help?
>>>>>> >
>>>>>> > Regards
>>>>>> > Bhargav
>>>>>> >
>>>>>> > [1] https://issues.apache.org/jira/browse/ISIS-479
>>>>>> > [2] PUT /myapp-webapp/restful/objects/TODO/L_0/properties/notes
>>>>>> HTTP/1.1
>>>>>> > Host: localhost:8080
>>>>>> > Accept: application/json
>>>>>> > Authorization: Basic c3ZlbjpwYXNz
>>>>>> > Cache-Control: no-cache
>>>>>> >
>>>>>> > { "value": "10/22/2013" }
>>>>>> >
>>>>>> > Result:
>>>>>> > {
>>>>>> > "message": "does not represent map",
>>>>>> > "stackTrace": [
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.viewer.restfulobjects.applib.JsonRepresentation.mapHas(JsonRepresentation.java:1126)",
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.viewer.restfulobjects.rendering.domainobjects.JsonValueEncoder.asAdapter(JsonValueEncoder.java:359)",
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.viewer.restfulobjects.server.resources.DomainResourceHelper.objectAdapterFor(DomainResourceHelper.java:313)",
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.viewer.restfulobjects.server.resources.DomainResourceHelper.parseAsMapWithSingleValue(DomainResourceHelper.java:463)",
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.viewer.restfulobjects.server.resources.DomainResourceHelper.parseAsMapWithSingleValue(DomainResourceHelper.java:454)",
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.viewer.restfulobjects.server.resources.DomainObjectResourceServerside.modifyProperty(DomainObjectResourceServerside.java:197)",
>>>>>> > "sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>>>>>> Method)",
>>>>>> >
>>>>>> >
>>>>>> "sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)",
>>>>>> >
>>>>>> >
>>>>>> "sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)",
>>>>>> > "java.lang.reflect.Method.invoke(Method.java:601)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:269)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:227)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:216)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:542)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)",
>>>>>> >
>>>>>> >
>>>>>> "org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)",
>>>>>> >
>>>>>> "javax.servlet.http.HttpServlet.service(HttpServlet.java:820)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)",
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.core.webapp.IsisSessionFilter$SessionState$1.handle(IsisSessionFilter.java:315)",
>>>>>> >
>>>>>> >
>>>>>> "org.apache.isis.core.webapp.IsisSessionFilter.doFilter(IsisSessionFilter.java:404)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)",
>>>>>> >
>>>>>> >
>>>>>> "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.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:440)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)",
>>>>>> > "org.mortbay.jetty.Server.handle(Server.java:326)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)",
>>>>>> >
>>>>>> "org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)",
>>>>>> >
>>>>>> "org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)",
>>>>>> >
>>>>>> "org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)",
>>>>>> >
>>>>>> >
>>>>>> "org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)"
>>>>>> > ],
>>>>>> > "causedBy": null
>>>>>> > }
>>>>>> >
>>>>>> >>
>>>>>> >> Thx
>>>>>> >> Dan
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> [1]
>>>>>> >>
>>>>>> https://github.com/apache/isis/blob/f38fdb92941172eabb12e0943509f239e6d5925f/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java#L219
>>>>>> >> [2]
>>>>>> >>
>>>>>> >> http://localhost:8080/restful/objects/TODO/L_11
>>>>>> >> , {
>>>>>> >>
>>>>>> >> - members:
>>>>>> >> {
>>>>>> >> - ownedBy:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: "sven",
>>>>>> >> - format: "decimal",
>>>>>> >> - x-isis-format: "bigdecimal"
>>>>>> >> },
>>>>>> >> - dueBy:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: "2013-07-24",
>>>>>> >> - format: "date",
>>>>>> >> - x-isis-format: "jodalocaldate"
>>>>>> >> },
>>>>>> >> - cost:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: 1.75,
>>>>>> >> - format: "decimal",
>>>>>> >> - x-isis-format: "bigdecimal"
>>>>>> >> },
>>>>>> >> - notes:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: null,
>>>>>> >> - format: "decimal",
>>>>>> >> - x-isis-format: "bigdecimal"
>>>>>> >> },
>>>>>> >> - attachment:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: null,
>>>>>> >> - format: "decimal",
>>>>>> >> - x-isis-format: "bigdecimal"
>>>>>> >> },
>>>>>> >> - description:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: "Buy bread",
>>>>>> >> - format: "decimal",
>>>>>> >> - x-isis-format: "bigdecimal"
>>>>>> >> },
>>>>>> >> - category:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: "Domestic",
>>>>>> >> - format: "decimal",
>>>>>> >> - x-isis-format: "bigdecimal"
>>>>>> >> },
>>>>>> >> - complete:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: false,
>>>>>> >> - x-isis-format: "boolean",
>>>>>> >> - disabledReason: "Always disabled"
>>>>>> >> },
>>>>>> >> - versionSequence:
>>>>>> >> {
>>>>>> >> - memberType: "property",
>>>>>> >> - value: 1,
>>>>>> >> - format: "int",
>>>>>> >> - x-isis-format: "long",
>>>>>> >> - disabledReason: "Always disabled"
>>>>>>
>>>>>> >> }
>>>>>> >> }
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> [3] this - which is valid according to the spec, I think - didn't
>>>>>> work:
>>>>>> >> {
>>>>>> >> "cost" : {
>>>>>> >> "value" : 2.75
>>>>>> >> },
>>>>>> >> "description" : {
>>>>>> >> "value" : "An updated description"
>>>>>> >> },
>>>>>> >> "category" : {
>>>>>> >> "value" : "Professional"
>>>>>> >> }
>>>>>> >> }
>>>>>> >>
>>>>>> >> [4] nor did this:
>>>>>> >> {
>>>>>> >> "members:" {
>>>>>> >> "cost" : {
>>>>>> >> "memberType": "property",
>>>>>> >> "value" : 2.75
>>>>>> >> },
>>>>>> >> "description" : {
>>>>>> >> "memberType": "property",
>>>>>> >> "value" : "An updated description"
>>>>>> >> },
>>>>>> >> "category" : {
>>>>>> >> "memberType": "property",
>>>>>> >> "value" : "Professional"
>>>>>> >> }
>>>>>> >> }
>>>>>> >> }
>>>>>> >>
>>>>>> >>
>>>>>> >> [5] nor did this:
>>>>>> >> {
>>>>>> >> "cost" : {
>>>>>> >> "memberType": "property",
>>>>>> >> "value" : 2.75
>>>>>> >> },
>>>>>> >> "description" : {
>>>>>> >> "memberType": "property",
>>>>>> >> "value" : "An updated description"
>>>>>> >> },
>>>>>> >> "category" : {
>>>>>> >> "memberType": "property",
>>>>>> >> "value" : "Professional"
>>>>>> >> }
>>>>>> >> }
>>>>>> >>
>>>>>> >>
>>>>>> >> [6]
>>>>>> >>
>>>>>> >> 1. Status Code: 400
>>>>>> >> 2. Server: Jetty(6.1.26)
>>>>>> >> 3. Content-Length: 0
>>>>>> >> 4. Warning: 199 RestfulObjects Could not find properties list
>>>>>> (nomembers
>>>>>>
>>>>>> >> [memberType=property]); got
>>>>>> {"cost":{"memberType":"property","value":
>>>>>> >> 2.75},"description":{"memberType":"property","value":"An updated
>>>>>> >> description"},"category":{"memberType":"property","value":
>>>>>> >> "Professional"}}
>>>>>> >> 5. Content-Type: application/json
>>>>>>
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> On 23 July 2013 18:05, Bhargav Golla <[email protected]>
>>>>>> wrote:
>>>>>> >>
>>>>>> >>> Hi Dan
>>>>>> >>>
>>>>>> >>> I am trying to edit the properties of an object and am following
>>>>>> 14.2 in
>>>>>> >>> ROSpec to do the same. I tried to make a PUT request to the URL
>>>>>> by chagning
>>>>>> >>> few properties and putting them into JSON. My request is as
>>>>>> follows:
>>>>>> >>> PUT /myapp-webapp/restful/objects/TODO/L_0 HTTP/1.1
>>>>>> >>> Host: localhost:8080
>>>>>> >>> Accept: application/json
>>>>>> >>> Authorization: Basic c3ZlbjpwYXNz
>>>>>> >>> Cache-Control: no-cache
>>>>>> >>>
>>>>>> >>> { "complete": { "value": "true" } }
>>>>>> >>>
>>>>>> >>> But it is giving me a 400 error. Do you have any help here?
>>>>>> >>>
>>>>>> >>> Regards
>>>>>> >>>
>>>>>> >>> Bhargav Golla
>>>>>> >>> Developer. Freelancer.
>>>>>> >>> B.E (Hons.) Computer Science
>>>>>> >>> BITS-Pilani
>>>>>> >>> Github <http://www.github.com/bhargavgolla> | LinkedIN<
>>>>>> http://www.linkedin.com/in/bhargavgolla>
>>>>>> >>> | Website <http://www.bhargavgolla.com/>
>>>>>> >>>
>>>>>> >>
>>>>>> >>
>>>>>> >
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards
>>>>>
>>>>> W.Dimuthu Upeksha
>>>>> Undergraduate
>>>>> Department of Computer Science And Engineering
>>>>>
>>>>> University of Moratuwa, Sri Lanka
>>>>>
>>>>
>>>>
>>>
>>
>