I use an xpath extractor to pull the form data, since this can change if you
change the bindings, etc...

In the controller pulling the page containing the form to submit, add an
XPath Extractor.  Make sure Tidy is on, and I named it "formData", and the
expression is //fo...@id="yourFormIdHere"]//input[contains(@name,
"formdata")]/@value  You'll need to add in the form's id.

In the subsequent request, you can submit it by adding a field named
"t:formdata" and set the value to ${formData} and ensure "encode" and
"include equals" are checked.

In some instances (e.g. if you have AJAX elements inside your form) you'll
have multiple formdata's in the page.  To submit additional values, just add
additional fields to the submit and append numbers, for example
${formData_2} will pull the second value.  If there are multiple,
${formData} defaults to the first.

This may make your jmeter plan a bit easier to maintain.

Cheers,
Taylor

On Tue, Nov 24, 2009 at 9:44 PM, I Wayan Saryada <saryada.wa...@gmail.com>wrote:

> Hi Andreas,
>
> I've installed charles proxy and captured both the request parameters sent
> by web browser and JMeter. I've found out that the request sent by the
> browser is encoded, on the other hand I didn't encode the request
> parameters
> sent by JMeter. After telling JMeter to encode the parameters the Tapestry
> form loaded correctly.
>
> Thanks for your guidance.
>
> On Wed, Nov 25, 2009 at 8:43 AM, Andreas Andreou <andy...@di.uoa.gr>
> wrote:
>
> > Either that, or jmeter doesn't have the correct values to send... try
> > to capture
> > and compare the requests - perhaps through a servlet filter? (a proxy
> such
> > charles can also help debug this)
> >
> > On Wed, Nov 25, 2009 at 1:55 AM, I Wayan Saryada
> > <saryada.wa...@gmail.com> wrote:
> > > Yes, I did a post request to the tapestry application. Does it mean
> that
> > > jmeter didn't send the hidden field correctly?
> > >
> > > On Wed, Nov 25, 2009 at 6:41 AM, Andreas Andreou <andy...@di.uoa.gr>
> > wrote:
> > >
> > >> Well, somehow the hidden fields are arriving modified / cropped to the
> > >> tapestry application.
> > >>
> > >> Did you setup jmeter to do a post?
> > >>
> > >> On Tue, Nov 24, 2009 at 1:16 PM, I Wayan Saryada
> > >> <saryada.wa...@gmail.com> wrote:
> > >> > Hi,
> > >> >
> > >> > I'm trying to do a load test on some of my Tapestry pages using
> > >> > JMeter. I create an http request from JMeter to submit the form and
> > >> > passes all the required input field value including the hidden field
> > >> > that contains value like formids, seedids, etc.
> > >> >
> > >> > When submitting the form from a browser it works just fine. But I
> got
> > >> > the following error on the response page returned to JMeter.
> > >> >
> > >> > [ +/- ] Exception: Unable to decode stream: invalid bit length
> repeat
> > >> > org.apache.hivemind.ApplicationRuntimeException
> > >> >
> > >> >
> > >> > [ +/- ] Exception: invalid bit length repeat
> > >> > java.util.zip.ZipException
> > >> > Stack Trace:
> > >> > java.util.zip.InflaterInputStream.read(InflaterInputStream.java:165)
> > >> > java.util.zip.GZIPInputStream.read(GZIPInputStream.java:111)
> > >> > java.io.BufferedInputStream.fill(BufferedInputStream.java:229)
> > >> > java.io.BufferedInputStream.read1(BufferedInputStream.java:267)
> > >> > java.io.BufferedInputStream.read(BufferedInputStream.java:324)
> > >> >
> > >>
> >
> java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2232)
> > >> >
> > >>
> >
> java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2245)
> > >> >
> > >>
> >
> java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2713)
> > >> >
> java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:765)
> > >> > java.io.ObjectInputStream.<init>(ObjectInputStream.java:283)
> > >> >
> > >>
> >
> org.apache.tapestry.util.io.CompressedDataEncoder.decodeString(CompressedDataEncoder.java:110)
> > >> >
> > >>
> >
> org.apache.tapestry.engine.RequestCycle.initializeIdState(RequestCycle.java:683)
> > >> >
> > >>
> >
> org.apache.tapestry.form.FormSupportImpl.reinitializeIdAllocatorForRewind(FormSupportImpl.java:456)
> > >> >
> > org.apache.tapestry.form.FormSupportImpl.rewind(FormSupportImpl.java:622)
> > >> > org.apache.tapestry.form.Form.renderComponent(Form.java:196)
> > >> >
> > org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:724)
> > >> >
> > >>
> >
> org.apache.tapestry.services.impl.DefaultResponseBuilder.render(DefaultResponseBuilder.java:187)
> > >> > org.apache.tapestry.form.Form.rewind(Form.java:269)
> > >> >
> > org.apache.tapestry.engine.RequestCycle.rewindForm(RequestCycle.java:469)
> > >> > org.apache.tapestry.form.Form.trigger(Form.java:280)
> > >> >
> > >>
> >
> org.apache.tapestry.engine.DirectService.triggerComponent(DirectService.java:166)
> > >> >
> > org.apache.tapestry.engine.DirectService.service(DirectService.java:142)
> > >> >
> > >> > Any information that might help me?
> > >> >
> > >> > --
> > >> > Regards,
> > >> > I Wayan Saryada
> > >> > http://www.kodejava.org
> > >> >
> > >> >
> ---------------------------------------------------------------------
> > >> > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> > >> > For additional commands, e-mail: users-h...@tapestry.apache.org
> > >> >
> > >> >
> > >>
> > >>
> > >>
> > >> --
> > >> Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr
> > >> Tapestry / Tacos developer
> > >> Open Source / JEE Consulting
> > >>
> > >> ---------------------------------------------------------------------
> > >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> > >> For additional commands, e-mail: users-h...@tapestry.apache.org
> > >>
> > >>
> > >
> > >
> > > --
> > > Regards,
> > > I Wayan Saryada
> > >
> >
> >
> >
> > --
> > Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr
> > Tapestry / Tacos developer
> > Open Source / JEE Consulting
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> > For additional commands, e-mail: users-h...@tapestry.apache.org
> >
> >
>

Reply via email to