struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Musachy Barroso" <musa...@gmail.com>
Subject Re: AjaxTag 1.3 support?
Date Tue, 05 Feb 2008 17:22:45 GMT
Don't give up so easily :). That is just a setting on the json plugin
to prevent cross site  scripting, and can be disabled.

musachy

On Feb 5, 2008 11:27 AM, Griffith, Michael *
<Michael.Griffith@fda.hhs.gov> wrote:
> Well, to answer my own question -- the answer is no. The JSON result
> serialization process escapes quotation marks, so my response that
> looked like this before serialization:
>
> {"questions":{"420":"Is your Java Application a ME, SE or EE
> application?","440":"If your Java Application is an SE application does
> it use Java Web Start?","450":"If your Java Application is a Java Web
> Application, list the application server used for
> production","490":"List any Java Web Services Technologies
> Used","500":"List any Java Web Application Technologies Used for
> presentation","510":"List any Java EE Technologies used in your
> application"}}
>
> Looks like this after serialization:
>
> "{\"questions\":{\"420\":\"Is your Java Application a ME, SE or EE
> application?\",\"440\":\"If your Java Application is an SE application
> does it use Java Web Start?\",\"450\":\"If your Java Application is a
> Java Web Application, list the application server used for
> production\",\"490\":\"List any Java Web Services Technologies
> Used\",\"500\":\"List any Java Web Application Technologies Used for
> presentation\",\"510\":\"List any Java EE Technologies used in your
> application\"}}"
>
> Making it unrecognizable to the autocompleter. This is pretty
> frustrating to me. Maybe I am expecting this to do something that it was
> never designed to do. My end goal was to be able to evaluate the ID of
> the question that the user selected from the autocompleter.
>
> I'm giving up this path and looking elsewhere.  Thanks to everyone that
> replied to my question and tried to help me.
>
> MG
>
>
> -----Original Message-----
> From: Griffith, Michael * [mailto:Michael.Griffith@fda.hhs.gov]
> Sent: Tuesday, February 05, 2008 8:32 AM
> To: Struts Users Mailing List
> Subject: RE: AjaxTag 1.3 support?
>
> Musachy,
>
> I can't seem to create the right blend of Entity objects/list/maps to
> allow the JSON plug in to serialize this response for me. If I create
> the string below using a loop, can I return it from the JSON plug in
> without the plug in doing anything further to it?
>
> In other words, does the plug in look at what it is trying to serialize
> and say, "Hey this is already valid JSON, I don't need to do anything to
> it..." or will it try to add additional info to the string returned?
>
> I'm guessing the shortest path for me is to just create the string in my
> own serialization loop, but I don't want to confuse the plug in -- if
> that makes any sense.
>
> MG
>
> -----Original Message-----
> From: Musachy Barroso [mailto:musachy@gmail.com]
> Sent: Monday, February 04, 2008 6:30 PM
> To: Struts Users Mailing List
> Subject: Re: AjaxTag 1.3 support?
>
> Right on.
>
> On Feb 4, 2008 6:45 PM, Griffith, Michael *
> <Michael.Griffith@fda.hhs.gov> wrote:
> > Dave,
> >
> > I think the bigger problem is the JSON that is returned, while it may
> be
> > valid, it not in the right structure expected. I should be generating
> > JSON like this:
> >
> > {"questions":{"420":"Is your Java Application a ME, SE or EE
> > application?","440":"If your Java Application is an SE application
> does
> > it use Java Web Start?"}}
> >
> > The [] brackets seem to be ignored by the parser.
> >
> > -----Original Message-----
> > From: Dave Newton [mailto:newton.dave@yahoo.com]
> > Sent: Monday, February 04, 2008 5:34 PM
> > To: Struts Users Mailing List
> > Subject: RE: AjaxTag 1.3 support?
> >
> > ...
> >
> >
> > That's probably an issue.
> >
> > --- "Griffith, Michael *" <Michael.Griffith@fda.hhs.gov> wrote:
> > > Yea, I think so -- I copied and pasted this from the log
> > file/console...
> > >
> > > From: Dave Newton [mailto:newton.dave@yahoo.com]
> > >
> > > Is it generating those brackets around your JSON?
> > >
> > > --- "Griffith, Michael *" <Michael.Griffith@fda.hhs.gov> wrote:
> > >
> > > > Musachy,
> > > >
> > > > Thanks for your many replies... Does this JSON look like the right
> > > > format? As far as I can tell, it matches your snippet below -- but
> I
> > > get
> > > > the same dojo parting error.
> > > >
> > > > [{"questions":{"420":"Is your Java Application a ME, SE or EE
> > > > application?"}},{"questions":{"440":"If your Java Application is
> an
> > SE
> > > > application does it use Java Web Start?"}},{"questions":{"450":"If
> > > your
> > > > Java Application is a Java Web Application, list the application
> > > server
> > > > used for production"}}]
> > > >
> > > > -----Original Message-----
> > > > From: Musachy Barroso [mailto:musachy@gmail.com]
> > > > Sent: Monday, February 04, 2008 3:52 PM
> > > > To: Struts Users Mailing List
> > > > Subject: Re: AjaxTag 1.3 support?
> > > >
> > > > The rule to use a map (simplest one) was added on 2.1, on 2.0.x
> the
> > > > easiest way to generate the json is to have an object with a map
> > field
> > > > that matches the name of "dataFieldName" in the autocompleter tag:
> > > >
> > > > class QuestionJson {
> > > >   private Map questions;
> > > >   ....
> > > > }
> > > >
> > > > public QuestionJson getQuestionJson() {
> > > >   Question q= ... [from my list]
> > > >    Map m = new HaswhMap();
> > > >    m.put("Key1", q.getQuestion1());
> > > >    m.put("Key2", q.getQuestion2());
> > > >    return new QuestionJson(m);
> > > > }
> > > >
> > > > <s:autocompleter ... dataFieldName="questions" ../>
> > > >
> > > > that will generate something like:
> > > >
> > > > {
> > > >   "questions": {
> > > >      "Key1" : "Question 1",
> > > >      "Key2" : "Question 2",
> > > >   }
> > > > }
> > > >
> > > > //that's the idea, but I typed out of what I remember which is
> often
> > > not
> > > > good :)
> > > >
> > > > musachy
> > > >
> > > > On Feb 4, 2008 4:34 PM, Griffith, Michael *
> > > > <Michael.Griffith@fda.hhs.gov> wrote:
> > > > > Musachy,
> > > > >
> > > > > I'm still not getting it...
> > > > > I am now serializing a list of maps with the entity id and text
> I
> > > > > want...
> > > > >
> > > > > Map<String,String> m= new HashMap<String,String>();
> > > > > Question q= ... [from my list]
> > > > > m.put("id", q.getId().toString());
> > > > > m.put("text", q.getText());
> > > > > newList.add(m);
> > > > >
> > > > > And my JSON result looks:
> > > > >
> > > > > [JSON][{"text":"Is your Java Application a ME, SE or EE
> > > > > application?","id":"420"},{"text":"If your Java Application is
> an
> > SE
> > > > > application does it use Java Web Start?","id":"440"},{"text":"If
> > > your
> > > > > Java Application is a Java Web Application, list the application
> > > > server
> > > > > used for production","id":"450"},{"text":"List any Java Web
> > Services
> > > > > Technologies Used","id":"490"},{"text":"List any Java Web
> > > Application
> > > > > Technologies Used for presentation","id":"500"},{"text":"List
> any
> > > Java
> > > > > EE Technologies used in your application","id":"510"}]
> > > > >
> > > > > I added the @JSON annotation as such:
> > > > >
> > > > >         @JSON(name="question")
> > > > >         public List<Map<String,String>> getNewList(){
> > > > >                 return newList;
> > > > >         }
> > > > >
> > > > > But it appears to be ignored.
> > > > >
> > > > > MG
> > > > >
> > > > > -----Original Message-----
> > > > > From: Musachy Barroso [mailto:musachy@gmail.com]
> > > > >
> > > > > Sent: Monday, February 04, 2008 2:53 PM
> > > > > To: Struts Users Mailing List
> > > > > Subject: Re: AjaxTag 1.3 support?
> > > > >
> > > > > Take a look here:
> > > > >
> > > > > http://cwiki.apache.org/S2PLUGINS/json-plugin.html
> > > > >
> > > > > musachy
> > > > >
> > > > > On Feb 4, 2008 3:43 PM, Griffith, Michael *
> > > > > <Michael.Griffith@fda.hhs.gov> wrote:
> > > > > > So, if you have an array of Entity objects, in my case
> question:
> > > > > >
> > > > > > How can I produce?
> > > > > >  {
> > > > > >      "question" : [
> > > > > >          ["1","question 1 text..."],
> > > > > >          ["2","question 2 text..."]
> > > > > >
> > > > > >      ]
> > > > > >  }
> > > > > >
> > > > > > -----Original Message-----
> > > > > > From: Musachy Barroso [mailto:musachy@gmail.com]
> > > > > > Sent: Monday, February 04, 2008 2:37 PM
> > > > > > To: Struts Users Mailing List
> > > > > > Subject: Re: AjaxTag 1.3 support?
> > > > > >
> > > > > > yes, but the output will depend on what you feed the JSON
> > result.
> > > > > >
> > > > > > musachy
> > > > > >
> > > > > > On Feb 4, 2008 3:20 PM, Griffith, Michael *
> > > > > > <Michael.Griffith@fda.hhs.gov> wrote:
> > > > > > > Musachy,
> > > > > > >
> > > > > > > I must have missed your point. Isn't the idea of using
the
> > JSON
> > > > > > plug-in
> > > > > > > so you don't have to iterate and create the list? If I
have
> an
> > > > array
> > > > > > or
> > > > > > > Entity objects or maps, isn't there a way that the plug-in
> > will
> > > > > create
> > > > > > > the JSON specified below?
> > > > > > >
> > > > > > > MG
> > > > > > >
> > > > > > > -----Original Message-----
> > > > > > > From: Musachy Barroso [mailto:musachy@gmail.com]
> > > > > > > Sent: Monday, February 04, 2008 1:56 PM
> > > > > > > To: Struts Users Mailing List
> > > > > > > Subject: Re: AjaxTag 1.3 support?
> > > > > > >
> > > > > > >
> > > > > > > to use the dataFIeldName, you have to return something
like:
> > > > > > >
> > > > > > > {
> > > > > > >     "state" : [
> > > > > > >         ["Alabama","AL"],
> > > > > > >         ["Alaska","AK"]
> > > > > > >     ]
> > > > > > > }
> > > > > > >
> > > > > > > if you are using 2.1 check this link:
> > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> http://cwiki.apache.org/WW/ajax-and-javascript-recipes.html#AjaxandJavaS
> > > > > > > criptRecipes-Autocompleter
> > > > > > >
> > > > > > > otherwise just an array of arrays should do:
> > > > > > >
> > > > > > > [
> > > > > > >     ["Alabama", "AL"],
> > > > > > >     ["Alaska", "AK"]
> > > > > > > ]
> > > > > > >
> > > > > > > musachy
> > > > > > >
> > > > > > > On Feb 4, 2008 2:46 PM, Griffith, Michael *
> > > > > > > <Michael.Griffith@fda.hhs.gov> wrote:
> > > > > > > > Musachy
> > > > > > > >
> > > > > > > > Here is the autocompleter tag and the JSON returned...
> > > > > > > >
> > >
> > === message truncated ===
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> >
> >
>
>
>
> --
> "Hey you! Would you help me to carry the stone?" Pink Floyd
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>



-- 
"Hey you! Would you help me to carry the stone?" Pink Floyd

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message