Hi,

I'm using tapestry 5.3 with tapestry-jquery.

I have a page called UploadImage to allow the user to upload an image and then crop it to size.

The image is uploaded by AjaxUpload.

The upload zone should then be replaced with a block to allow cropping of the image. The problem is that after replacing the form's contents with the block Tapestry complains there is no FormSupport in the environment.

Is there a better way for me to do this?

UploadImage.tml

<?xml version="1.0" encoding="UTF-8"?>

<t:layout xmlns:t="http://tapestry.apache.org/schema/tapestry_5_3.xsd";
xmlns:p="tapestry:parameter"
        xmlns:j="tapestry-library:jquery">
<h2>Upload Image</h2>
<br />
<t:form>
<t:zone t:id="uploadZone" id="uploadZone">
<t:errors />
<!--<input t:type="upload" t:id="file" t:value="file" validate="required" /> <br/>-->
<j:ajaxupload t:id="uploadImage"
                      t:multiple="false"
                      t:allowedExtensions="[jpg, png, gif]"
                      t:sizeLimit="1M">
<noscript>
<p>JavaScript must be activated!</p>
</noscript>
</j:ajaxupload>

<br/>

</t:zone>
</t:form>
<t:block t:id="uploadResult">
<div>
<h4>Crop Image</h4>

<t:if test="message">
<p>
<strong>${message}</strong>
</p>
</t:if>
<t:LygCropImage t:id="cropImage" image="prop:getUncroppedImage()">

</t:LygCropImage>
<p><t:LygSubmit t:id="submit" value="literal:Crop Image"></t:LygSubmit></p>
</div>
</t:block>
</t:layout>


UploadImage.java

package com.liftyourgame.application.pages;

import com.liftyourgame.application.components.LygCropImage;
import com.liftyourgame.application.entities.User;
import com.liftyourgame.application.entities.VisionImage;
import com.liftyourgame.application.services.CropImage;
import com.liftyourgame.application.services.CurrentUserService;
import com.liftyourgame.data.UserDAO;
import com.liftyourgame.data.VisionDAO;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.shiro.authz.annotation.RequiresUser;
import org.apache.tapestry5.Block;
import org.apache.tapestry5.PersistenceConstants;
import org.apache.tapestry5.annotations.InjectComponent;
import org.apache.tapestry5.annotations.OnEvent;
import org.apache.tapestry5.annotations.Persist;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.hibernate.annotations.CommitAfter;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.apache.tapestry5.services.ajax.AjaxResponseRenderer;
import org.apache.tapestry5.upload.services.UploadedFile;
import org.got5.tapestry5.jquery.JQueryEventConstants;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;

@RequiresUser
public class UploadImage {
  @Inject
  private CurrentUserService currentUserService;

  @Inject
  private VisionDAO visionDAO;

  @Inject
  private UserDAO userDAO;

  @Persist(PersistenceConstants.FLASH)
  @Property
  private String message;

  @Inject
  private Block uploadResult;

  @Inject
  private AjaxResponseRenderer ajaxResponseRenderer;

  @Inject
  private CropImage cropImageService;

  @InjectComponent
  private LygCropImage cropImage;

  void onActivate() {
  }

  @SuppressWarnings("unchecked")
  public VisionImage getUncroppedImage() {
    User u = currentUserService.getUser();
    VisionImage image = u.getUncroppedVisionImages().get(0);

    return image;
  }



  @CommitAfter
@OnEvent(component = "uploadImage", value = JQueryEventConstants.AJAX_UPLOAD)
  void onImageUpload(UploadedFile uploadedFile) throws Exception {
    byte[] bytes = inputStreamToByteArray(uploadedFile.getStream());
    VisionImage image = new VisionImage();
    image.setCropped(false);
    image.setImage(bytes);
    String filename = uploadedFile.getFileName().toLowerCase().trim();
    if(filename.endsWith(".png")) {
      image.setMimeType("image/png");
    } else if(filename.endsWith(".gif")) {
      image.setMimeType("image/gif");
    } else if(filename.endsWith(".jpg") || filename.endsWith(".jpeg")) {
      image.setMimeType("image/jpeg");
    }
    User user = currentUserService.getUser();
    visionDAO.create(image);
    image.setUser(user);
    user.getUncroppedVisionImages().clear();
    user.getUncroppedVisionImages().add(0, image);

    ajaxResponseRenderer.addRender("uploadZone", uploadResult);
  }

  void onUploadException(FileUploadException ex) {
    this.message = "Upload problem: " + ex.getMessage();

    ajaxResponseRenderer.addRender("uploadZone", uploadResult);
  }

  @CommitAfter
  Object onSubmit() throws IOException {
    int x = cropImage.getX();
    int y = cropImage.getY();
    int w = cropImage.getW();
    int h = cropImage.getH();
    VisionImage image = getUncroppedImage();

    InputStream inputStream = new ByteArrayInputStream(image.getImage());
    BufferedImage bufferedImage = ImageIO.read(inputStream);
BufferedImage croppedImage = cropImageService.crop(bufferedImage, x, y, w, h, 100, 100);
    image.setCropped(true);

    visionDAO.update(image);
    User u = currentUserService.getUser();
    u.getVisionImages().add(image);
    userDAO.update(u);

    return Vision.class;
  }

  static  byte[] inputStreamToByteArray(InputStream is) throws Exception {
    ByteArrayOutputStream buffer = new ByteArrayOutputStream();

    int nRead;
    byte[] data = new byte[16384];

    while ((nRead = is.read(data, 0, data.length)) != -1) {
      buffer.write(data, 0, nRead);
    }

    buffer.flush();

    return buffer.toByteArray();
  }
}

Output:
Hibernate:
    select
        user0_.user_id as user1_3_,
        user0_.creationDate as creation2_3_,
        user0_.deletionDate as deletion3_3_,
        user0_.lastModified as lastModi4_3_,
        user0_.account_locked as account5_3_,
        user0_.became_subscriber as became6_3_,
        user0_.credentials_expired as credenti7_3_,
        user0_.daily_motivation_email as daily8_3_,
        user0_.date_of_birth as date9_3_,
        user0_.email as email3_,
        user0_.encoded_password as encoded11_3_,
        user0_.facebook_id as facebook12_3_,
        user0_.facebook_userid as facebook13_3_,
        user0_.first_name as first14_3_,
        user0_.gender as gender3_,
        user0_.last_emailed as last16_3_,
        user0_.last_name as last17_3_,
        user0_.mypassword as mypassword3_,
        user0_.new_salt as new19_3_,
        user0_.paid_subscriber as paid20_3_,
        user0_.passwordSalt as passwor21_3_
    from
        users user0_
    where
        user0_.email='[email protected]'
Hibernate:
    select
        roles0_.user_id as user1_3_1_,
        roles0_.role_id as role2_1_,
        role1_.role_id as role1_4_0_,
        role1_.role_name as role2_4_0_
    from
        user_goals roles0_
    inner join
        roles role1_
            on roles0_.role_id=role1_.role_id
    where
        roles0_.user_id=?
Hibernate:
    select
        goals0_.user_id as user9_3_1_,
        goals0_.goal_id as goal1_1_,
        goals0_.goal_id as goal1_1_0_,
        goals0_.creationDate as creation2_1_0_,
        goals0_.deletionDate as deletion3_1_0_,
        goals0_.lastModified as lastModi4_1_0_,
        goals0_.goal_category as goal5_1_0_,
        goals0_.goal_description as goal6_1_0_,
        goals0_.goal_name as goal7_1_0_,
        goals0_.target_date as target8_1_0_,
        goals0_.user_id as user9_1_0_
    from
        goals goals0_
    where
        (
            goals0_.deletiondate is null
        )
        and goals0_.user_id=?
Hibernate:
    select
        actions0_.goal_id as goal8_1_1_,
        actions0_.goal_step_id as goal1_1_,
        actions0_.goal_step_id as goal1_2_0_,
        actions0_.creationDate as creation2_2_0_,
        actions0_.deletionDate as deletion3_2_0_,
        actions0_.lastModified as lastModi4_2_0_,
        actions0_.goal_step_name as goal5_2_0_,
        actions0_.actual_date as actual6_2_0_,
        actions0_.goal_id as goal8_2_0_,
        actions0_.target_date as target7_2_0_
    from
        goal_steps actions0_
    where
        (
            actions0_.deletiondate is null
        )
        and actions0_.goal_id=?
    order by
        actions0_.target_date asc
Hibernate:
    select
        actions0_.goal_id as goal8_1_1_,
        actions0_.goal_step_id as goal1_1_,
        actions0_.goal_step_id as goal1_2_0_,
        actions0_.creationDate as creation2_2_0_,
        actions0_.deletionDate as deletion3_2_0_,
        actions0_.lastModified as lastModi4_2_0_,
        actions0_.goal_step_name as goal5_2_0_,
        actions0_.actual_date as actual6_2_0_,
        actions0_.goal_id as goal8_2_0_,
        actions0_.target_date as target7_2_0_
    from
        goal_steps actions0_
    where
        (
            actions0_.deletiondate is null
        )
        and actions0_.goal_id=?
    order by
        actions0_.target_date asc
Hibernate:
    select
        actions0_.goal_id as goal8_1_1_,
        actions0_.goal_step_id as goal1_1_,
        actions0_.goal_step_id as goal1_2_0_,
        actions0_.creationDate as creation2_2_0_,
        actions0_.deletionDate as deletion3_2_0_,
        actions0_.lastModified as lastModi4_2_0_,
        actions0_.goal_step_name as goal5_2_0_,
        actions0_.actual_date as actual6_2_0_,
        actions0_.goal_id as goal8_2_0_,
        actions0_.target_date as target7_2_0_
    from
        goal_steps actions0_
    where
        (
            actions0_.deletiondate is null
        )
        and actions0_.goal_id=?
    order by
        actions0_.target_date asc
Hibernate:
    call next value for visionimages_visionimage_id_seq
Hibernate:
    select
        uncroppedv0_.user_id as user8_3_1_,
        uncroppedv0_.visionimage_id as visionim1_1_,
        uncroppedv0_.position as position1_,
        uncroppedv0_.visionimage_id as visionim1_5_0_,
        uncroppedv0_.creationDate as creation2_5_0_,
        uncroppedv0_.deletionDate as deletion3_5_0_,
        uncroppedv0_.lastModified as lastModi4_5_0_,
        uncroppedv0_.cropped as cropped5_0_,
        uncroppedv0_.image as image5_0_,
        uncroppedv0_.mime_type as mime7_5_0_,
        uncroppedv0_.user_id as user8_5_0_
    from
        vision_images uncroppedv0_
    where
        (
            uncroppedv0_.cropped = 'false'
            and uncroppedv0_.deletiondate is null
        )
        and uncroppedv0_.user_id=?
Hibernate:
    insert
    into
        vision_images
(creationDate, deletionDate, lastModified, cropped, image, mime_type, visionimage_id)
    values
        (?, ?, ?, ?, ?, ?, ?)
Hibernate:
    update
        vision_images
    set
        user_id=null,
        position=null
    where
        user_id=?
        and visionimage_id=?
Hibernate:
    update
        vision_images
    set
        user_id=?,
        position=?
    where
        visionimage_id=?
Hibernate:
    select
        user0_.user_id as user1_3_,
        user0_.creationDate as creation2_3_,
        user0_.deletionDate as deletion3_3_,
        user0_.lastModified as lastModi4_3_,
        user0_.account_locked as account5_3_,
        user0_.became_subscriber as became6_3_,
        user0_.credentials_expired as credenti7_3_,
        user0_.daily_motivation_email as daily8_3_,
        user0_.date_of_birth as date9_3_,
        user0_.email as email3_,
        user0_.encoded_password as encoded11_3_,
        user0_.facebook_id as facebook12_3_,
        user0_.facebook_userid as facebook13_3_,
        user0_.first_name as first14_3_,
        user0_.gender as gender3_,
        user0_.last_emailed as last16_3_,
        user0_.last_name as last17_3_,
        user0_.mypassword as mypassword3_,
        user0_.new_salt as new19_3_,
        user0_.paid_subscriber as paid20_3_,
        user0_.passwordSalt as passwor21_3_
    from
        users user0_
    where
        user0_.email='[email protected]'
127173439 [qtp1527318062-25] ERROR tapestry.render.com.liftyourgame.application.pages.UploadImage - Render queue error in BeginRender[UploadImage:submit.linksubmit]: No object of type org.apache.tapestry5.services.FormSupport is available from the Environment. org.apache.tapestry5.ioc.internal.util.TapestryException: No object of type org.apache.tapestry5.services.FormSupport is available from the Environment. [at classpath:com/liftyourgame/application/components/LygSubmit.tml, line 2] at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:153) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$BeginRenderPhase.render(ComponentPageElementImpl.java:209) at org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72) at org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:124) at org.apache.tapestry5.internal.services.PageRenderQueueImpl$1.renderMarkup(PageRenderQueueImpl.java:142) at org.got5.tapestry5.jquery.components.AjaxUpload$2.renderMarkup(AjaxUpload.java:246) at org.apache.tapestry5.internal.services.PageRenderQueueImpl$Bridge.renderMarkup(PageRenderQueueImpl.java:62) at org.apache.tapestry5.internal.services.ajax.SingleZonePartialRendererFilter.renderMarkup(SingleZonePartialRendererFilter.java:98) at org.apache.tapestry5.internal.services.PageRenderQueueImpl$Bridge.renderMarkup(PageRenderQueueImpl.java:62) at org.apache.tapestry5.internal.services.PageRenderQueueImpl.renderPartial(PageRenderQueueImpl.java:159)
    at $PageRenderQueue_10ddf690fa388.renderPartial(Unknown Source)
    at $PageRenderQueue_10ddf690fa37c.renderPartial(Unknown Source)
at org.apache.tapestry5.internal.services.PartialMarkupRendererTerminator.renderMarkup(PartialMarkupRendererTerminator.java:45) at org.got5.tapestry5.jquery.services.js.JSModule$2.renderMarkup(JSModule.java:58)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$36.renderMarkup(TapestryModule.java:2126)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$35.renderMarkup(TapestryModule.java:2110)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$34.renderMarkup(TapestryModule.java:2092)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$33.renderMarkup(TapestryModule.java:2076)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$32.renderMarkup(TapestryModule.java:2058)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$31.renderMarkup(TapestryModule.java:2033)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
    at $PartialMarkupRenderer_10ddf690fa438.renderMarkup(Unknown Source)
at org.apache.tapestry5.internal.services.AjaxPartialResponseRendererImpl.renderPartialPageMarkup(AjaxPartialResponseRendererImpl.java:89) at $AjaxPartialResponseRenderer_10ddf690fa419.renderPartialPageMarkup(Unknown Source) at org.apache.tapestry5.internal.services.AjaxComponentEventRequestHandler.handle(AjaxComponentEventRequestHandler.java:127) at org.apache.tapestry5.internal.services.ajax.AjaxFormUpdateFilter.handle(AjaxFormUpdateFilter.java:56)
    at $ComponentEventRequestHandler_10ddf690fa41a.handle(Unknown Source)
    at $ComponentEventRequestHandler_10ddf690fa2a1.handle(Unknown Source)
at org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
    at $ComponentEventRequestHandler_10ddf690fa2a6.handle(Unknown Source)
at org.apache.tapestry5.upload.internal.services.UploadExceptionFilter.handle(UploadExceptionFilter.java:75)
    at $ComponentEventRequestHandler_10ddf690fa2a6.handle(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$40.handle(TapestryModule.java:2454)
    at $ComponentEventRequestHandler_10ddf690fa2a6.handle(Unknown Source)
    at $ComponentEventRequestHandler_10ddf690fa29c.handle(Unknown Source)
at org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handleComponentEvent(ComponentRequestHandlerTerminator.java:43) at org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39) at $ComponentRequestHandler_10ddf690fa29e.handleComponentEvent(Unknown Source) at org.tynamo.security.SecurityComponentRequestFilter.handleComponentEvent(SecurityComponentRequestFilter.java:42) at $ComponentRequestFilter_10ddf690fa29b.handleComponentEvent(Unknown Source) at $ComponentRequestHandler_10ddf690fa29e.handleComponentEvent(Unknown Source) at $ComponentRequestHandler_10ddf690fa266.handleComponentEvent(Unknown Source) at org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
    at $Dispatcher_10ddf690fa26a.dispatch(Unknown Source)
    at $Dispatcher_10ddf690fa262.dispatch(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302) at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:105) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:95) at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:119)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
    at $RequestHandler_10ddf690fa255.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253) at org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
    at $HttpServletRequestFilter_10ddf690fa254.service(Unknown Source)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.tynamo.security.services.impl.SecurityConfiguration$2.call(SecurityConfiguration.java:104) at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:344) at org.tynamo.security.services.impl.SecurityConfiguration.service(SecurityConfiguration.java:102)
    at $HttpServletRequestFilter_10ddf690fa252.service(Unknown Source)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
    at $HttpServletRequestHandler_10ddf690fa24f.service(Unknown Source)
at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1171) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:421) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:118) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:490) at org.eclipse.jetty.server.session.SessionHandler.handle(SessionHandler.java:181) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:159) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:913) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:138) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:360) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:136) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:859) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:116) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:243) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:115)
    at org.eclipse.jetty.server.Server.handle(Server.java:325)
at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:539) at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:896)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:745)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218) at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:398) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:423) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:404)
    at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.tapestry5.ioc.util.UnknownValueException: No object of type org.apache.tapestry5.services.FormSupport is available from the Environment. at org.apache.tapestry5.internal.services.EnvironmentImpl.peekRequired(EnvironmentImpl.java:88)
    at $Environment_10ddf690fa359.peekRequired(Unknown Source)
    at $Environment_10ddf690fa233.peekRequired(Unknown Source)
at org.apache.tapestry5.internal.transform.EnvironmentalWorker$EnvironmentalConduit.get(EnvironmentalWorker.java:59) at org.apache.tapestry5.corelib.components.LinkSubmit.getfieldvalue_formSupport(LinkSubmit.java) at org.apache.tapestry5.corelib.components.LinkSubmit.beginRender(LinkSubmit.java:149) at org.apache.tapestry5.corelib.components.LinkSubmit.beginRender(LinkSubmit.java) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$BeginRenderPhase.invokeComponent(ComponentPageElementImpl.java:202) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:143)
    ... 108 more
127173743 [qtp1527318062-25] ERROR org.apache.tapestry5.services.TapestryModule.RequestExceptionHandler - Processing of request failed with uncaught exception: Render queue error in BeginRender[UploadImage:submit.linksubmit]: No object of type org.apache.tapestry5.services.FormSupport is available from the Environment. org.apache.tapestry5.internal.services.RenderQueueException: Render queue error in BeginRender[UploadImage:submit.linksubmit]: No object of type org.apache.tapestry5.services.FormSupport is available from the Environment. [at classpath:com/liftyourgame/application/components/LygSubmit.tml, line 2] at org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:81) at org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:124) at org.apache.tapestry5.internal.services.PageRenderQueueImpl$1.renderMarkup(PageRenderQueueImpl.java:142) at org.got5.tapestry5.jquery.components.AjaxUpload$2.renderMarkup(AjaxUpload.java:246) at org.apache.tapestry5.internal.services.PageRenderQueueImpl$Bridge.renderMarkup(PageRenderQueueImpl.java:62) at org.apache.tapestry5.internal.services.ajax.SingleZonePartialRendererFilter.renderMarkup(SingleZonePartialRendererFilter.java:98) at org.apache.tapestry5.internal.services.PageRenderQueueImpl$Bridge.renderMarkup(PageRenderQueueImpl.java:62) at org.apache.tapestry5.internal.services.PageRenderQueueImpl.renderPartial(PageRenderQueueImpl.java:159)
    at $PageRenderQueue_10ddf690fa388.renderPartial(Unknown Source)
    at $PageRenderQueue_10ddf690fa37c.renderPartial(Unknown Source)
at org.apache.tapestry5.internal.services.PartialMarkupRendererTerminator.renderMarkup(PartialMarkupRendererTerminator.java:45) at org.got5.tapestry5.jquery.services.js.JSModule$2.renderMarkup(JSModule.java:58)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$36.renderMarkup(TapestryModule.java:2126)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$35.renderMarkup(TapestryModule.java:2110)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$34.renderMarkup(TapestryModule.java:2092)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$33.renderMarkup(TapestryModule.java:2076)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$32.renderMarkup(TapestryModule.java:2058)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$31.renderMarkup(TapestryModule.java:2033)
    at $PartialMarkupRenderer_10ddf690fa439.renderMarkup(Unknown Source)
    at $PartialMarkupRenderer_10ddf690fa438.renderMarkup(Unknown Source)
at org.apache.tapestry5.internal.services.AjaxPartialResponseRendererImpl.renderPartialPageMarkup(AjaxPartialResponseRendererImpl.java:89) at $AjaxPartialResponseRenderer_10ddf690fa419.renderPartialPageMarkup(Unknown Source) at org.apache.tapestry5.internal.services.AjaxComponentEventRequestHandler.handle(AjaxComponentEventRequestHandler.java:127) at org.apache.tapestry5.internal.services.ajax.AjaxFormUpdateFilter.handle(AjaxFormUpdateFilter.java:56)
    at $ComponentEventRequestHandler_10ddf690fa41a.handle(Unknown Source)
    at $ComponentEventRequestHandler_10ddf690fa2a1.handle(Unknown Source)
at org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
    at $ComponentEventRequestHandler_10ddf690fa2a6.handle(Unknown Source)
at org.apache.tapestry5.upload.internal.services.UploadExceptionFilter.handle(UploadExceptionFilter.java:75)
    at $ComponentEventRequestHandler_10ddf690fa2a6.handle(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$40.handle(TapestryModule.java:2454)
    at $ComponentEventRequestHandler_10ddf690fa2a6.handle(Unknown Source)
    at $ComponentEventRequestHandler_10ddf690fa29c.handle(Unknown Source)
at org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handleComponentEvent(ComponentRequestHandlerTerminator.java:43) at org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39) at $ComponentRequestHandler_10ddf690fa29e.handleComponentEvent(Unknown Source) at org.tynamo.security.SecurityComponentRequestFilter.handleComponentEvent(SecurityComponentRequestFilter.java:42) at $ComponentRequestFilter_10ddf690fa29b.handleComponentEvent(Unknown Source) at $ComponentRequestHandler_10ddf690fa29e.handleComponentEvent(Unknown Source) at $ComponentRequestHandler_10ddf690fa266.handleComponentEvent(Unknown Source) at org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
    at $Dispatcher_10ddf690fa26a.dispatch(Unknown Source)
    at $Dispatcher_10ddf690fa262.dispatch(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302) at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:105) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:95) at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:119)
    at $RequestHandler_10ddf690fa263.service(Unknown Source)
    at $RequestHandler_10ddf690fa255.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253) at org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
    at $HttpServletRequestFilter_10ddf690fa254.service(Unknown Source)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
at org.tynamo.security.services.impl.SecurityConfiguration$2.call(SecurityConfiguration.java:104) at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:344) at org.tynamo.security.services.impl.SecurityConfiguration.service(SecurityConfiguration.java:102)
    at $HttpServletRequestFilter_10ddf690fa252.service(Unknown Source)
    at $HttpServletRequestHandler_10ddf690fa257.service(Unknown Source)
    at $HttpServletRequestHandler_10ddf690fa24f.service(Unknown Source)
at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1171) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:421) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:118) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:490) at org.eclipse.jetty.server.session.SessionHandler.handle(SessionHandler.java:181) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:159) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:913) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:138) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:360) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:136) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:859) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:116) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:243) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:115)
    at org.eclipse.jetty.server.Server.handle(Server.java:325)
at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:539) at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:896)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:745)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218) at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:398) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:423) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:404)
    at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: No object of type org.apache.tapestry5.services.FormSupport is available from the Environment. [at classpath:com/liftyourgame/application/components/LygSubmit.tml, line 2] at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:153) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$BeginRenderPhase.render(ComponentPageElementImpl.java:209) at org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72)
    ... 106 more
Caused by: org.apache.tapestry5.ioc.util.UnknownValueException: No object of type org.apache.tapestry5.services.FormSupport is available from the Environment. at org.apache.tapestry5.internal.services.EnvironmentImpl.peekRequired(EnvironmentImpl.java:88)
    at $Environment_10ddf690fa359.peekRequired(Unknown Source)
    at $Environment_10ddf690fa233.peekRequired(Unknown Source)
at org.apache.tapestry5.internal.transform.EnvironmentalWorker$EnvironmentalConduit.get(EnvironmentalWorker.java:59) at org.apache.tapestry5.corelib.components.LinkSubmit.getfieldvalue_formSupport(LinkSubmit.java) at org.apache.tapestry5.corelib.components.LinkSubmit.beginRender(LinkSubmit.java:149) at org.apache.tapestry5.corelib.components.LinkSubmit.beginRender(LinkSubmit.java) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$BeginRenderPhase.invokeComponent(ComponentPageElementImpl.java:202) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.invoke(ComponentPageElementImpl.java:143)
    ... 108 more


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to