All Implemented Interfaces:
Serializable, Iterable<Component>, IEventSink, IEventSource, IFeedbackContributor, IConverterLocator, IMetadataContext<Serializable,Component>, IQueueRegion, IHeaderContributor, IRequestableComponent, IHierarchical<Component>, IClusterable

public class UploadProgressBar extends Panel
A panel to show the progress of an HTTP upload.

Note: For this to work upload progress monitoring must be enabled in the wicket application. Example:

 
  public class App extends WebApplication {
 
        @Override
        protected void init() {
                super.init();
 
                <b>getApplicationSettings().setUploadProgressUpdatesEnabled(true);</b> // <--
        }
 }
 
 
For customizing starting text see RESOURCE_STARTING. Implementation detail: Despite being located in an Ajax package, the progress communication is not done via Ajax but with an IFrame instead due to a bug in Webkit based browsers, see WICKET-3202.
Author:
Andrew Lombardi
See Also:
  • Field Details

  • Constructor Details

    • UploadProgressBar

      public UploadProgressBar(String id, FileUploadField uploadField)
      Constructor that will display the upload progress bar for every submit of the given form.
      Parameters:
      id - component id (not null)
      uploadField - the file upload field to check for a file upload, or null to display the upload field for every submit of the given form
    • UploadProgressBar

      public UploadProgressBar(String id, Form<?> form)
      Constructor that will display the upload progress bar for every submit of the given form.
      Parameters:
      id - component id (not null)
      form - form that will be submitted (not null)
    • UploadProgressBar

      public UploadProgressBar(String id, Form<?> form, FileUploadField uploadField)
      Constructor that will display the upload progress bar for submissions of the given form, that include a file upload in the given file upload field; i.e. if the user did not select a file in the given file upload field, the progess bar is not displayed.
      Parameters:
      id - component id (not null)
      form - form that is submitted (not null)
      uploadField - the file upload field to check for a file upload, or null to display the upload field for every submit of the given form
  • Method Details

    • onInitialize

      protected void onInitialize()
      Description copied from class: Component
      This method is meant to be used as an alternative to initialize components. Usually the component's constructor is used for this task, but sometimes a component cannot be initialized in isolation, it may need to access its parent component or its markup in order to fully initialize. This method is invoked once per component's lifecycle when a path exists from this component to the Page thus providing the component with an atomic callback when the component's environment is built out.

      Overrides must call super#Component.onInitialize(). Usually this should be the first thing an override does, much like a constructor.

      Parent containers are guaranteed to be initialized before their children

      It is safe to use Component.getPage() in this method

      NOTE:The timing of this call is not precise, the contract is that it is called sometime before Component.onBeforeRender().

      Overrides:
      onInitialize in class MarkupContainer
    • newStatusComponent

      Creates a component for the status text
      Parameters:
      id - The component id
      Returns:
      the status component
    • newBarComponent

      Creates a component for the bar
      Parameters:
      id - The component id
      Returns:
      the bar component
    • getCss

      Override this to provide your own CSS, or return null to avoid including the default.
      Returns:
      ResourceReference for your CSS.
    • renderHead

      public void renderHead(IHeaderResponse response)
      Render to the web response whatever the component wants to contribute to the head section.
      Specified by:
      renderHead in interface IHeaderContributor
      Overrides:
      renderHead in class Component
      Parameters:
      response - Response object
    • getOnProgressUpdatedCallBack

      Allows to pass a JavaScript function that is called when progress in updated.
      Returns:
      A JavaScript function.
    • start

      public void start(IPartialPageRequestHandler handler)