Class BatchUploader
- All Implemented Interfaces:
HasAttachHandlers
,HasHandlers
,EventListener
,HasVisibility
,IsWidget
,LogicalStructure
,HasBeforeCommitHandlers
,HasPreviewShownHandlers
,HasClearHandlers
,HasClickHandlers
,HasDoubleClickHandlers
,HasDragMoveHandlers
,HasDragRepositionMoveHandlers
,HasDragRepositionStartHandlers
,HasDragRepositionStopHandlers
,HasDragResizeMoveHandlers
,HasDragResizeStartHandlers
,HasDragResizeStopHandlers
,HasDragStartHandlers
,HasDragStopHandlers
,HasDropHandlers
,HasDropMoveHandlers
,HasDropOutHandlers
,HasDropOverHandlers
,HasFocusChangedHandlers
,HasHoverHandlers
,HasHoverHiddenHandlers
,HasKeyDownHandlers
,HasKeyPressHandlers
,HasMouseDownHandlers
,HasMouseMoveHandlers
,HasMouseOutHandlers
,HasMouseOverHandlers
,HasMouseStillDownHandlers
,HasMouseUpHandlers
,HasMouseWheelHandlers
,HasMovedHandlers
,HasParentMovedHandlers
,HasResizedHandlers
,HasRightMouseDownHandlers
,HasRuleContextChangedHandlers
,HasScrolledHandlers
,HasShowContextMenuHandlers
,HasVisibilityChangedHandlers
,HasMembersChangedHandlers
- Direct Known Subclasses:
BatchUploader
,BatchUploader
NOTE: BatchUploader is only available with Smart GWT Power or better.
By default, a
BatchUploader consists of a single FileItem
form field. This form field
will upload a file using the special "batchUpload" built-in DataSource. The uploaded file data will be parsed and
validated using the uploadDataSource
, then
streamed back to the browser, along with any errors, for display in a ListGrid.
The BatchUploader.previewShown()
notification method will
be fired when the uploaded records are being displayed in this grid.
The user can then correct any errors and submit
the final dataset, which will be added to the DataSource via a series of "add" DSRequests, all submitted as a single
HTTP request via request queuing
.
Developers may specify a
custom "add" operation to use on the target uploadDataSource
via the uploadOperation
property.
Additional form fields can be added to the form that uploads the data file via uploadFormFields
. Values entered into these fields are
not included in the "add" DSRequests used to store the uploaded records. Instead, they are stored as HttpSession
attributes with the names corresponding to the names of the specified uploadFormFields
(optionally with a
prefix
applied, in case this is necessary to
avoid name collisions in the session). This allows any custom logic for the "add" operation to access these additional
fields via httpSession.getAttribute(). If uploadFormFields
are not provided method httpSession.getAttribute() will not be called.
Because all records are saved in a single HTTP request, a similar strategy of storing data as servletRequest or session attributes allows reuse of objects required to perform the "add" operations (such as field values common to all added records, or a SQL connection or transaction manager).
If you already have upload data available as a csv-formatted string or similar,
the BatchUploader can be used without showing an upload interface. This can be valuable if you are picking up sample
data from some custom UI (a separate upload component, or TextArea for copy/pasting content, for example).
To
suppress the upload interface, set showUploadForm
to
false
and invoke uploadData()
directly. The
uploadData()
method passes sample data to the server as values.pasteData
. The server side
batchUpload
dataSource has logic to extract and work with this data, exactly as if it had been directly
uploaded as the content of a file.
If uploadFieldName
is set on any of the uploadDataSource
's fields, the BatchUploader will use that name to map the uploaded file's content.
Note, that for
CSV data format
header line is optional. If first
non-empty line in the uploaded file has no matching field names, it is assumed that there's no header row, and all rows
(including the first one) are treated as data rows.
Imported data can be transformed during import, see DataSourceField.importStrategy
for details.
A
couple of server-side techniques are interesting in conjunction with the BatchUploader. One is to set the DataSource.serverConstructor
property to point at your
own class that inherits from com.isomorphic.datasource.BasicDataSource
. The most interesting reason for
doing this is to override the validate
method and provide complete custom validation - for example,
checking relations to other tables.
Another technique is to handle the initial Smart GWT call in your own servlet,
by setting the dataURL
property. You then handle the add
requests with a combination of your own code and Smart GWT server API calls. This is a good way to add special pre-
and post-processing to the normal server-side flow.
Note: The special "batchUpload" DataSource, which should
reside in the shared/ds folder of your application's webroot (see Installation Instructions
). is not part of your application's data flow, and it has nothing to do with the uploadDataSource
you use to actually persist the
validated and error-corrected data: it is simply a means to uploading the raw data in the first place. Normally, you
should simply ignore its presence and treat it as an internal detail of the Smart GWT framework.
However, there are circumstances in which you may wish to change it to achieve specific aims. For example, you may wish to override the Java class it invokes, in order to insert your own security or other validation logic into the initial upload flow. This is entirely in keeping with the design, but we regard it as an out-of-the-ordinary use-case: normal usage is simply to ignore the presence of the batchUpload DataSource.
BatchUploader is a VStack
, that simply stacks members on the vertical axis without trying to manage
their height. If you need to control heights, you can set vPolicy
to "fill"
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled
-
Field Summary
Fields inherited from class com.smartgwt.client.widgets.BaseWidget
config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassName
Fields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionAdd a beforeCommit handler.Add a previewShown handler.static void
changeAutoChildDefaults
(String autoChildName, Canvas defaults) Changes the defaults for Canvas AutoChildren namedautoChildName
.static void
changeAutoChildDefaults
(String autoChildName, FormItem defaults) Changes the defaults for FormItem AutoChildren namedautoChildName
.protected JavaScriptObject
create()
Message to display when the user clicks "Commit" but there is nothing we can commit because every row in the grid has errorsControls if server-side API BatchUpload.parseUploadData(...) will convert imported boolean fields values to actual Booleans or will leave them as Strings.Button that cancels the uncommitted upload.Title for thecancel button
.Confirmation message to show if the user clicks the "Cancel" button andwarnOnCancel
is true.Button that commits changes once the user is happy with the data.Title for thecommit button
.Message to display after data has been committed, whenshowCommitConfirmation
is true.Format to assume for user-provided data.If set, the batchUploader will copy this value to the queue of "add" requests it sends to the server to actually populate the data.Deprecated.Deprecated.in favor ofuploadQuoteString
Message displayed when columns in the imported file were discarded anddisplayDiscardedColumns
is true.If columns were present in the imported data that were discarded because they could not be matched to any DataSource fields, whether these should be displayed to the user, using thediscardedColumnsMessage
shown within theuploadStatusMessages
component.Error message to show when the uploading process detects a missing delimiter or end of line after quoted value in the first line.Error message to show when the uploading process detects an Excel File, which is not supported.Error message to show when the uploading process detects a file with no data.Error message to show when the uploading process detects an invalid inputType.Error message to show when the uploaded file has rows other than the first row that could not be parsed.Error message to show when the uploading process is unable to detect the delimiter.Error message to show when the uploading process detects an unterminated quote string in the first line.getGrid()
Grid which will show a preview of data to be uploaded, with errors flaggedFields to apply togrid
.Getter implementing theLogicalStructure
interface, which supports Eclipse's logical structure debugging facility.Button that scrolls grid to the next error.Title for thenext error button
.static BatchUploader
getOrCreateRef
(JavaScriptObject jsObj) Specifies what action to take if the user attempts to commit a partially validated set of data (ie, one that still contains some errors).Message to display after data has been committed, whenshowCommitConfirmation
is true.IfpartialCommit
is set to "prevent", the text to display to the user if they try to commit a dataset containing errors.IfpartialCommit
is set to "prompt", the text to display to the user in the confirmation dialog.Button that scrolls grid to the previous error.Title for theprevious error button
.Object containing properties to send with every "add" request this batchUploader sends.Whether to show thecommit message
after data is successfully committed.Should theuploadForm
be displayed.Message to display if at least one update was rolled back due to errors in another row.Button that triggers the upload.Title for theupload button
.DataSource used to save uploaded records.The delimiter to use when importing character-delimited files.On server-side, BatchUploader usesDataImport
to import uploaded files, specifically APIs takingjava.io.Reader
parameter.String to prepend to the names of the additional fields specified inuploadFormFields
before they are stored in the HttpSession on the server.FileItem for selecting the file to upload.Title to display next to theFileItem
field where the user enters a filename to uploadForm used to specify file to upload, and any additional fields required.FormItem[]
Optional fields for the uploadForm.OptionalDSRequest.operationId
for the "add" operation used to add new records to theuploadDataSource
.The character used to quote strings.Container for informational messages that are shown when a user attempts an upload.If set, indicates that a warning dialog should be shown when Cancel is clicked, asking the user to confirm that this is really what they want to do.setAllRecordsInErrorMessage
(String allRecordsInErrorMessage) Message to display when the user clicks "Commit" but there is nothing we can commit because every row in the grid has errorssetAutoInterpretBooleans
(Boolean autoInterpretBooleans) Controls if server-side API BatchUpload.parseUploadData(...) will convert imported boolean fields values to actual Booleans or will leave them as Strings.setCancelButtonTitle
(String cancelButtonTitle) Title for thecancel button
.setCancelConfirmMessage
(String cancelConfirmMessage) Confirmation message to show if the user clicks the "Cancel" button andwarnOnCancel
is true.setCommitButtonTitle
(String commitButtonTitle) Title for thecommit button
.setCommitConfirmationMessage
(String commitConfirmationMessage) Message to display after data has been committed, whenshowCommitConfirmation
is true.setDataFormat
(ImportFormat dataFormat) Format to assume for user-provided data.setDataURL
(String dataURL) If set, the batchUploader will copy this value to the queue of "add" requests it sends to the server to actually populate the data.setDefaultDelimiter
(String defaultDelimiter) Deprecated.in favor ofuploadDelimiter
static void
setDefaultProperties
(BatchUploader batchUploaderProperties) Class level method to set the default properties of this class.setDefaultQuoteString
(String defaultQuoteString) Deprecated.in favor ofuploadQuoteString
setDiscardedColumnsMessage
(String discardedColumnsMessage) Message displayed when columns in the imported file were discarded anddisplayDiscardedColumns
is true.setDisplayDiscardedColumns
(Boolean displayDiscardedColumns) If columns were present in the imported data that were discarded because they could not be matched to any DataSource fields, whether these should be displayed to the user, using thediscardedColumnsMessage
shown within theuploadStatusMessages
component.setErrorMessageDelimiterOrEndOfLine
(String errorMessageDelimiterOrEndOfLine) Error message to show when the uploading process detects a missing delimiter or end of line after quoted value in the first line.setErrorMessageExcelFileDetected
(String errorMessageExcelFileDetected) Error message to show when the uploading process detects an Excel File, which is not supported.setErrorMessageFileIsBlank
(String errorMessageFileIsBlank) Error message to show when the uploading process detects a file with no data.setErrorMessageInputType
(String errorMessageInputType) Error message to show when the uploading process detects an invalid inputType.setErrorMessageRowsNotParsed
(String errorMessageRowsNotParsed) Error message to show when the uploaded file has rows other than the first row that could not be parsed.setErrorMessageUndeterminedDelimiter
(String errorMessageUndeterminedDelimiter) Error message to show when the uploading process is unable to detect the delimiter.setErrorMessageUnterminatedQuote
(String errorMessageUnterminatedQuote) Error message to show when the uploading process detects an unterminated quote string in the first line.setGridFields
(ListGridField... gridFields) Fields to apply togrid
.Setter implementing theLogicalStructure
interface, which supports Eclipse's logical structure debugging facility.setNextButtonTitle
(String nextButtonTitle) Title for thenext error button
.setPartialCommit
(PartialCommitOption partialCommit) Specifies what action to take if the user attempts to commit a partially validated set of data (ie, one that still contains some errors).setPartialCommitConfirmationMessage
(String partialCommitConfirmationMessage) Message to display after data has been committed, whenshowCommitConfirmation
is true.setPartialCommitError
(String partialCommitError) IfpartialCommit
is set to "prevent", the text to display to the user if they try to commit a dataset containing errors.setPartialCommitPrompt
(String partialCommitPrompt) IfpartialCommit
is set to "prompt", the text to display to the user in the confirmation dialog.setPreviousButtonTitle
(String previousButtonTitle) Title for theprevious error button
.setRequestProperties
(DSRequest requestProperties) Object containing properties to send with every "add" request this batchUploader sends.setShowCommitConfirmation
(Boolean showCommitConfirmation) Whether to show thecommit message
after data is successfully committed.setShowUploadForm
(Boolean showUploadForm) Should theuploadForm
be displayed.setUpdatesRolledBackMessage
(String updatesRolledBackMessage) Message to display if at least one update was rolled back due to errors in another row.setUploadButtonTitle
(String uploadButtonTitle) Title for theupload button
.setUploadDataSource
(DataSource uploadDataSource) DataSource used to save uploaded records.setUploadDelimiter
(String uploadDelimiter) The delimiter to use when importing character-delimited files.setUploadEncoding
(String uploadEncoding) On server-side, BatchUploader usesDataImport
to import uploaded files, specifically APIs takingjava.io.Reader
parameter.setUploadFieldPrefix
(String uploadFieldPrefix) String to prepend to the names of the additional fields specified inuploadFormFields
before they are stored in the HttpSession on the server.setUploadFileLabel
(String uploadFileLabel) Title to display next to theFileItem
field where the user enters a filename to uploadsetUploadFormFields
(FormItem... uploadFormFields) Optional fields for the uploadForm.void
setUploadFormItems
(FormItem... items) Synonym ofsetUploadFormFields(FormItem...)
.setUploadOperation
(String uploadOperation) OptionalDSRequest.operationId
for the "add" operation used to add new records to theuploadDataSource
.setUploadQuoteString
(String uploadQuoteString) The character used to quote strings.setWarnOnCancel
(Boolean warnOnCancel) If set, indicates that a warning dialog should be shown when Cancel is clicked, asking the user to confirm that this is really what they want to do.void
uploadData
(String data) This method assumes a developer has sample data in memory (for example a csv-formatted string), and invokes the dataSource upload operation directly, bypassing the uploadForm.Methods inherited from class com.smartgwt.client.widgets.layout.VStack
setDefaultProperties, setLogicalStructure
Methods inherited from class com.smartgwt.client.widgets.layout.Layout
addMember, addMember, addMember, addMember, addMemberPostCreate, addMemberPostCreate, addMemberPreCreate, addMemberPreCreate, addMembers, addMembers, addMembersChangedHandler, getAnimateMembers, getAnimateMemberTime, getCanDropComponents, getChildTabPosition, getDefaultResizeBars, getDropComponent, getDropLine, getDropLineThickness, getDropPosition, getEditProxyConstructor, getEnforcePolicy, getHPolicy, getLayoutBottomMargin, getLayoutEndMargin, getLayoutLeftMargin, getLayoutMargin, getLayoutRightMargin, getLayoutStartMargin, getLayoutTopMargin, getLeaveScrollbarGap, getLocateMembersBy, getLocateMembersType, getManagePercentBreadth, getMember, getMember, getMemberDefaultBreadth, getMemberNumber, getMemberNumber, getMemberOverlap, getMembers, getMembersLength, getMembersMargin, getMinMemberLength, getMinMemberSize, getOverflow, getPaddingAsLayoutMargin, getResizeBar, getResizeBarClass, getResizeBarSize, getReverseOrder, getShowDragPlaceHolder, getShowDropLines, getStackZIndex, getVertical, getVPolicy, hasMember, hideDropLine, hideMember, hideMember, layoutIsDirty, onInit, onInit_Layout, reflow, reflow, reflowNow, removeMember, removeMembers, removeMembers, reorderMember, reorderMembers, replaceMember, revealChild, revealChild, setAlign, setAlign, setAnimateMembers, setAnimateMemberTime, setCanDropComponents, setDefaultLayoutAlign, setDefaultLayoutAlign, setDefaultProperties, setDefaultResizeBars, setDropLineProperties, setDropLineThickness, setEditProxyConstructor, setEnforcePolicy, setHPolicy, setLayoutBottomMargin, setLayoutEndMargin, setLayoutLeftMargin, setLayoutMargin, setLayoutRightMargin, setLayoutStartMargin, setLayoutTopMargin, setLeaveScrollbarGap, setLocateMembersBy, setLocateMembersType, setLogicalStructure, setManagePercentBreadth, setMemberOverlap, setMembers, setMembersMargin, setMinBreadthMember, setMinBreadthMember, setMinBreadthMember, setMinMemberLength, setMinMemberSize, setOverflow, setPaddingAsLayoutMargin, setPlaceHolderDefaults, setPlaceHolderProperties, setResizeBarClass, setResizeBarSize, setReverseOrder, setShowDragPlaceHolder, setShowDropLines, setStackZIndex, setVertical, setVisibleMember, setVPolicy, showMember, showMember
Methods inherited from class com.smartgwt.client.widgets.Canvas
addChild, addChild, addChild, addChild, addChild, addClearHandler, addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragRepositionMoveHandler, addDragRepositionStartHandler, addDragRepositionStopHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDropHandler, addDropMoveHandler, addDropOutHandler, addDropOverHandler, addFocusChangedHandler, addHoverHandler, addHoverHiddenHandler, addKeyDownHandler, addKeyPressHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseStillDownHandler, addMouseUpHandler, addMouseWheelHandler, addMovedHandler, addParentMovedHandler, addPeer, addPeer, addPeer, addPeer, addResizedHandler, addRightMouseDownHandler, addRuleContextChangedHandler, addScrolledHandler, addShowContextMenuHandler, addSnapAlignCandidate, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clearExplicitTabIndex, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsEventTarget, containsFocus, containsPoint, containsPoint, dataContextChanged, deparent, depeer, disable, enable, encloses, focus, focusAfterGroup, focusAtEnd, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAdaptiveHeightPriority, getAdaptiveWidthPriority, getAlwaysManageFocusNavigation, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideEffect, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeLayoutMode, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaHandleID, getAriaRole, getAriaStateDefaults, getAutoMaskComponents, getAutoParent, getAutoPopulateData, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBorderRadius, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanAdaptHeight, getCanAdaptWidth, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanFocus, getCanHover, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenResizeSnapAlign, getChildrenSnapAlign, getChildrenSnapCenterAlign, getChildrenSnapEdgeAlign, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContents, getContextMenu, getCorrectZoomOverflow, getCursor, getDataContext, getDataPath, getDefaultHeight, getDefaultWidth, getDefiningProperty, getDefiningPropertyName, getDefiningPropertyNameOptions, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragMaxHeight, getDragMaxWidth, getDragMinHeight, getDragMinWidth, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragTargetAsString, getDragType, getDropTarget, getDropTargetAsString, getDropTypes, getDropTypesAsString, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getElement, getElement, getEnableWhen, getEndLine, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFloatingScrollbars, getFormItemAutoChild, getForwardSVGeventsToObject, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupPadding, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverAutoFitMaxWidth, getHoverAutoFitMaxWidthAsString, getHoverAutoFitWidth, getHoverComponent, getHoverDelay, getHoverFocusKey, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverPersist, getHoverScreen, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlElementAsString, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getIsPrinting, getIsRuleScope, getIsSnapAlignCandidate, getKeepInParentRect, getLayoutAlign, getLeaveGroupLabelSpace, getLeavePageSpace, getLeft, getLeftAsString, getLocalId, getLocateByIDOnly, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getLocatorName, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMatchElementHeight, getMatchElementWidth, getMaxHeight, getMaxWidth, getMaxZoomOverflowError, getMenuConstructor, getMinHeight, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getName, getNativeAutoHideScrollbars, getNextZIndex, getNoDoubleClicks, getNoDropCursor, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getPaletteDefaults, getPanelContainer, getParentCanvas, getParentElement, getPeers, getPendingMarkerStyle, getPendingMarkerVisible, getPercentBox, getPercentSource, getPersistentMatchElement, getPointerSettings, getPointerTarget, getPointerTargetAsString, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrintStyleName, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getReceiveScrollbarEvents, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getRuleContext, getRuleContext, getRuleScope, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowColor, getShadowDepth, getShadowHOffset, getShadowImage, getShadowOffset, getShadowSoftness, getShadowSpread, getShadowVOffset, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowPointer, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSizeMayChangeOnRedraw, getSkinImgDir, getSnapAlignCandidates, getSnapAlignCenterLineStyle, getSnapAlignEdgeLineStyle, getSnapAxis, getSnapEdge, getSnapGridLineProperties, getSnapGridStyle, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapPosition, getSnapPosition, getSnapResizeToAlign, getSnapResizeToGrid, getSnapTo, getSnapToAlign, getSnapToCenterAlign, getSnapToEdgeAlign, getSnapToGrid, getSnapVDirection, getSnapVGap, getStartLine, getStyleName, getTabIndex, getTestDataContext, getTestInstance, getTitle, getTooltip, getTop, getTopAsString, getTopElement, getUISummary, getUpdateTabPositionOnDraw, getUpdateTabPositionOnReparent, getUseBackMask, getUseCSSShadow, getUseDragMask, getUseImageForSVG, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getValuesManagerAsString, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWhen, getVisibleWidth, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getWorkflows, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, initComplete, intersects, isDirty, isDisabled, isFocused, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, pageScrollDown, pageScrollUp, parentResized, placeNear, placeNear, placeNear, print, print, print, print, printComponents, provideRuleContext, provideRuleContext, redraw, redraw, registerFontScaledPaddingStyles, removeChild, removeChild, removePeer, removePeer, removeRuleContext, removeSnapAlignCandidate, resizeAutoChildAttributes, resizeBy, resizeControls, resizeControlsTo, resizeFonts, resizeFonts, resizeFonts, resizeFontsTo, resizeIcons, resizePadding, resizePadding, resizeTo, resizeTo, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAdaptHeightByCustomizer, setAdaptiveHeightPriority, setAdaptiveWidthPriority, setAdaptWidthByCustomizer, setAllowExternalFilters, setAlwaysManageFocusNavigation, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideEffect, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeLayoutMode, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoHeight, setAutoMaskComponents, setAutoParent, setAutoPopulateData, setAutoResizeAutoChildAttributes, setAutoResizeIcons, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBorderRadius, setBottom, setCanAcceptDrop, setCanAdaptHeight, setCanAdaptWidth, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setCanSelectText, setChildren, setChildrenResizeSnapAlign, setChildrenSnapAlign, setChildrenSnapCenterAlign, setChildrenSnapEdgeAlign, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContents, setContextMenu, setCorrectZoomOverflow, setCursor, setDataContext, setDataPath, setDefaultHeight, setDefaultPageSpace, setDefaultProperties, setDefaultShowCustomScrollbars, setDefaultWidth, setDefiningProperty, setDefiningPropertyNameOptions, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragMaxHeight, setDragMaxWidth, setDragMinHeight, setDragMinWidth, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragTarget, setDragType, setDropTarget, setDropTarget, setDropTypes, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setElement, setEnableWhen, setEndLine, setExtraSpace, setFacetId, setFloatingScrollbars, setForwardSVGeventsToObject, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupPadding, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverAutoFitMaxWidth, setHoverAutoFitMaxWidth, setHoverAutoFitWidth, setHoverDelay, setHoverFocusKey, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverPersist, setHoverScreen, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setIsRuleScope, setIsSnapAlignCandidate, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeaveGroupLabelSpace, setLeavePageSpace, setLeft, setLeft, setLocateByIDOnly, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLocatorName, setLocatorParent, setLocatorParent, setLogicalStructure, setMargin, setMatchElement, setMatchElementHeight, setMatchElementWidth, setMaxHeight, setMaxWidth, setMaxZoomOverflowError, setMenuConstructor, setMinHeight, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setName, setNativeAutoHideScrollbars, setNeverUseFilters, setNoDoubleClicks, setNoDropCursor, setOpacity, setPadding, setPageLeft, setPageTop, setPanelContainer, setParentCanvas, setParentElement, setPeers, setPendingMarkerStyle, setPendingMarkerVisible, setPercentBox, setPercentSource, setPersistentMatchElement, setPointerSettings, setPointerTarget, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrintStyleName, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setReceiveScrollbarEvents, setRect, setRect, setRedrawOnResize, setRelativeTabPosition, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setRuleScope, setScrollbarConstructor, setScrollbarSize, setShadowColor, setShadowDepth, setShadowHOffset, setShadowImage, setShadowOffset, setShadowSoftness, setShadowSpread, setShadowVOffset, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowPointer, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSizeMayChangeOnRedraw, setSkinImgDir, setSmoothFade, setSnapAlignCandidates, setSnapAlignCenterLineStyle, setSnapAlignEdgeLineStyle, setSnapAxis, setSnapEdge, setSnapGridLineProperties, setSnapGridStyle, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToAlign, setSnapResizeToGrid, setSnapTo, setSnapToAlign, setSnapToCenterAlign, setSnapToEdgeAlign, setSnapToGrid, setSnapVDirection, setSnapVGap, setStartLine, setStyleName, setTabIndex, setTestDataContext, setTitle, setTooltip, setTop, setTop, setUpdateTabPositionOnDraw, setUpdateTabPositionOnReparent, setUseBackMask, setUseCSSShadow, setUseDragMask, setUseImageForSVG, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setValuesManager, setVisibility, setVisible, setVisibleWhen, setWidth, setWidth, setWidth, setWidth100, setWorkflows, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPendingMarker, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, startDebuggingOverflow, stopDebuggingOverflow, updateChildTabPosition, updateChildTabPositions, updateEditNode, updateHover, updateHover, updateShadow, updateTabPositionForDraw, visibleAtPoint, willAcceptDrop
Methods inherited from class com.smartgwt.client.widgets.BaseWidget
addDrawHandler, addDynamicProperty, addDynamicProperty, addDynamicProperty, addDynamicProperty, applyFactoryProperties, clearDynamicProperty, completeCreation, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hasDynamicProperty, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isDrawn, isFactoryCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setDefaultProperties, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, setLogicalStructure, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString
Methods inherited from class com.google.gwt.user.client.ui.Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEvents
Methods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.google.gwt.event.shared.HasHandlers
fireEvent
-
Constructor Details
-
BatchUploader
public BatchUploader() -
BatchUploader
-
-
Method Details
-
getOrCreateRef
-
changeAutoChildDefaults
Changes the defaults for Canvas AutoChildren namedautoChildName
.- Parameters:
autoChildName
- name of an AutoChild to customize the defaults for.defaults
- Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, seeSGWTProperties
.- See Also:
-
changeAutoChildDefaults
Changes the defaults for FormItem AutoChildren namedautoChildName
.- Parameters:
autoChildName
- name of an AutoChild to customize the defaults for.defaults
- FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, seeSGWTProperties
.- See Also:
-
create
-
setAllRecordsInErrorMessage
public BatchUploader setAllRecordsInErrorMessage(String allRecordsInErrorMessage) throws IllegalStateException Message to display when the user clicks "Commit" but there is nothing we can commit because every row in the grid has errors- Parameters:
allRecordsInErrorMessage
- New allRecordsInErrorMessage value. Default value is "All records have errors; nothing to commit"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getAllRecordsInErrorMessage
Message to display when the user clicks "Commit" but there is nothing we can commit because every row in the grid has errors- Returns:
- Current allRecordsInErrorMessage value. Default value is "All records have errors; nothing to commit"
-
setAutoInterpretBooleans
Controls if server-side API BatchUpload.parseUploadData(...) will convert imported boolean fields values to actual Booleans or will leave them as Strings. The default is true.Default behavior would interpret boolean values by following rules:
- Accept all caps permutations of "true"/"false", "yes"/"no", and "null"
- "T" == true, "F" == false
- "Y" == true, "N" == false
- "0" is false
- empty string is null
- everything else is true
- Parameters:
autoInterpretBooleans
- New autoInterpretBooleans value. Default value is true- Returns:
BatchUploader
instance, for chaining setter calls
-
getAutoInterpretBooleans
Controls if server-side API BatchUpload.parseUploadData(...) will convert imported boolean fields values to actual Booleans or will leave them as Strings. The default is true.Default behavior would interpret boolean values by following rules:
- Accept all caps permutations of "true"/"false", "yes"/"no", and "null"
- "T" == true, "F" == false
- "Y" == true, "N" == false
- "0" is false
- empty string is null
- everything else is true
- Returns:
- Current autoInterpretBooleans value. Default value is true
-
getCancelButton
Button that cancels the uncommitted upload.This component is an AutoChild named "cancelButton". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current cancelButton value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setCancelButtonTitle
Title for thecancel button
.- Parameters:
cancelButtonTitle
- New cancelButtonTitle value. Default value is "Cancel"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getCancelButtonTitle
Title for thecancel button
.- Returns:
- Current cancelButtonTitle value. Default value is "Cancel"
-
setCancelConfirmMessage
Confirmation message to show if the user clicks the "Cancel" button andwarnOnCancel
is true. Defaults to "You will lose any work you have done on this data. Proceed anyway?"- Parameters:
cancelConfirmMessage
- New cancelConfirmMessage value. Default value is See below- Returns:
BatchUploader
instance, for chaining setter calls
-
getCancelConfirmMessage
Confirmation message to show if the user clicks the "Cancel" button andwarnOnCancel
is true. Defaults to "You will lose any work you have done on this data. Proceed anyway?"- Returns:
- Current cancelConfirmMessage value. Default value is See below
-
getCommitButton
Button that commits changes once the user is happy with the data.This component is an AutoChild named "commitButton". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current commitButton value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setCommitButtonTitle
Title for thecommit button
.- Parameters:
commitButtonTitle
- New commitButtonTitle value. Default value is "Commit"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getCommitButtonTitle
Title for thecommit button
.- Returns:
- Current commitButtonTitle value. Default value is "Commit"
-
setCommitConfirmationMessage
public BatchUploader setCommitConfirmationMessage(String commitConfirmationMessage) throws IllegalStateException Message to display after data has been committed, whenshowCommitConfirmation
is true.- Parameters:
commitConfirmationMessage
- New commitConfirmationMessage value. Default value is "Records added"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getCommitConfirmationMessage
Message to display after data has been committed, whenshowCommitConfirmation
is true.- Returns:
- Current commitConfirmationMessage value. Default value is "Records added"
-
setDataFormat
Format to assume for user-provided data. UseImportFormat
"auto" for auto-detection.- Parameters:
dataFormat
- New dataFormat value. Default value is "csv"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getDataFormat
Format to assume for user-provided data. UseImportFormat
"auto" for auto-detection.- Returns:
- Current dataFormat value. Default value is "csv"
-
setDataURL
If set, the batchUploader will copy this value to the queue of "add" requests it sends to the server to actually populate the data. You can use this facility to route the queue to your own server-side logic, for example to add pre- or post-processing.- Parameters:
dataURL
- New dataURL value. Default value is null- Returns:
BatchUploader
instance, for chaining setter calls
-
getDataURL
If set, the batchUploader will copy this value to the queue of "add" requests it sends to the server to actually populate the data. You can use this facility to route the queue to your own server-side logic, for example to add pre- or post-processing.- Returns:
- Current dataURL value. Default value is null
-
setDefaultDelimiter
Deprecated.in favor ofuploadDelimiter
The delimiter to use when importing character-delimited files. The default is comma (CSV).- Parameters:
defaultDelimiter
- New defaultDelimiter value. Default value is ","- Returns:
BatchUploader
instance, for chaining setter calls
-
getDefaultDelimiter
Deprecated.in favor ofuploadDelimiter
The delimiter to use when importing character-delimited files. The default is comma (CSV).- Returns:
- Current defaultDelimiter value. Default value is ","
-
setDefaultQuoteString
Deprecated.in favor ofuploadQuoteString
The default character used to quote strings.- Parameters:
defaultQuoteString
- New defaultQuoteString value. Default value is "\""- Returns:
BatchUploader
instance, for chaining setter calls
-
getDefaultQuoteString
Deprecated.in favor ofuploadQuoteString
The default character used to quote strings.- Returns:
- Current defaultQuoteString value. Default value is "\""
-
setDiscardedColumnsMessage
public BatchUploader setDiscardedColumnsMessage(String discardedColumnsMessage) throws IllegalStateException Message displayed when columns in the imported file were discarded anddisplayDiscardedColumns
is true. Within this message, ${discardedColumns} can be used to show a comma separated list of the column names that were discarded (example: "price, saleDate, total").Default message is: "The following columns in your uploaded file were ignored because they did not match any of the expected column names: ${discardedColumns}"
- Parameters:
discardedColumnsMessage
- New discardedColumnsMessage value. Default value is "..."- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getDiscardedColumnsMessage
Message displayed when columns in the imported file were discarded anddisplayDiscardedColumns
is true. Within this message, ${discardedColumns} can be used to show a comma separated list of the column names that were discarded (example: "price, saleDate, total").Default message is: "The following columns in your uploaded file were ignored because they did not match any of the expected column names: ${discardedColumns}"
- Returns:
- Current discardedColumnsMessage value. Default value is "..."
-
setDisplayDiscardedColumns
public BatchUploader setDisplayDiscardedColumns(Boolean displayDiscardedColumns) throws IllegalStateException If columns were present in the imported data that were discarded because they could not be matched to any DataSource fields, whether these should be displayed to the user, using thediscardedColumnsMessage
shown within theuploadStatusMessages
component.- Parameters:
displayDiscardedColumns
- New displayDiscardedColumns value. Default value is true- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getDisplayDiscardedColumns
If columns were present in the imported data that were discarded because they could not be matched to any DataSource fields, whether these should be displayed to the user, using thediscardedColumnsMessage
shown within theuploadStatusMessages
component.- Returns:
- Current displayDiscardedColumns value. Default value is true
-
setErrorMessageDelimiterOrEndOfLine
public BatchUploader setErrorMessageDelimiterOrEndOfLine(String errorMessageDelimiterOrEndOfLine) throws IllegalStateException Error message to show when the uploading process detects a missing delimiter or end of line after quoted value in the first line.- Parameters:
errorMessageDelimiterOrEndOfLine
- New errorMessageDelimiterOrEndOfLine value. Default value is "Delimiter or end of line expected after quoted value - problem found in the first line at character position: ${errorOffset}."- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getErrorMessageDelimiterOrEndOfLine
Error message to show when the uploading process detects a missing delimiter or end of line after quoted value in the first line.- Returns:
- Current errorMessageDelimiterOrEndOfLine value. Default value is "Delimiter or end of line expected after quoted value - problem found in the first line at character position: ${errorOffset}."
-
setErrorMessageExcelFileDetected
public BatchUploader setErrorMessageExcelFileDetected(String errorMessageExcelFileDetected) throws IllegalStateException Error message to show when the uploading process detects an Excel File, which is not supported.- Parameters:
errorMessageExcelFileDetected
- New errorMessageExcelFileDetected value. Default value is "You uploaded an Excel file. Please save your data as a csv file and re-upload"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getErrorMessageExcelFileDetected
Error message to show when the uploading process detects an Excel File, which is not supported.- Returns:
- Current errorMessageExcelFileDetected value. Default value is "You uploaded an Excel file. Please save your data as a csv file and re-upload"
-
setErrorMessageFileIsBlank
public BatchUploader setErrorMessageFileIsBlank(String errorMessageFileIsBlank) throws IllegalStateException Error message to show when the uploading process detects a file with no data.- Parameters:
errorMessageFileIsBlank
- New errorMessageFileIsBlank value. Default value is "The provided file is blank. Please, provide a file with data."- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getErrorMessageFileIsBlank
Error message to show when the uploading process detects a file with no data.- Returns:
- Current errorMessageFileIsBlank value. Default value is "The provided file is blank. Please, provide a file with data."
-
setErrorMessageInputType
public BatchUploader setErrorMessageInputType(String errorMessageInputType) throws IllegalStateException Error message to show when the uploading process detects an invalid inputType.- Parameters:
errorMessageInputType
- New errorMessageInputType value. Default value is "Invalid inputType value was set!"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getErrorMessageInputType
Error message to show when the uploading process detects an invalid inputType.- Returns:
- Current errorMessageInputType value. Default value is "Invalid inputType value was set!"
-
setErrorMessageRowsNotParsed
public BatchUploader setErrorMessageRowsNotParsed(String errorMessageRowsNotParsed) throws IllegalStateException Error message to show when the uploaded file has rows other than the first row that could not be parsed.This is a dynamic string - text within
${...}
will be evaluated as JS code when the message is displayed.The following variables are available to be used in this message:
- goodRowCount: Total rows that were parsed correctly.
- totalRows: Total rows to be parsed in the uploaded file.
- firstBadRow: First row that could not be parsed.
- badRowCount: Total rows that could not be parsed.
- Parameters:
errorMessageRowsNotParsed
- New errorMessageRowsNotParsed value. Default value is "Some rows could not be parsed; the grid below shows ${goodRowCount} of ${totalRows} data rows. Row number ${firstBadRow} was the first row to fail to be parsed."- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getErrorMessageRowsNotParsed
Error message to show when the uploaded file has rows other than the first row that could not be parsed.This is a dynamic string - text within
${...}
will be evaluated as JS code when the message is displayed.The following variables are available to be used in this message:
- goodRowCount: Total rows that were parsed correctly.
- totalRows: Total rows to be parsed in the uploaded file.
- firstBadRow: First row that could not be parsed.
- badRowCount: Total rows that could not be parsed.
- Returns:
- Current errorMessageRowsNotParsed value. Default value is "Some rows could not be parsed; the grid below shows ${goodRowCount} of ${totalRows} data rows. Row number ${firstBadRow} was the first row to fail to be parsed."
-
setErrorMessageUndeterminedDelimiter
public BatchUploader setErrorMessageUndeterminedDelimiter(String errorMessageUndeterminedDelimiter) throws IllegalStateException Error message to show when the uploading process is unable to detect the delimiter.- Parameters:
errorMessageUndeterminedDelimiter
- New errorMessageUndeterminedDelimiter value. Default value is "We were unable to guess the delimiter"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getErrorMessageUndeterminedDelimiter
Error message to show when the uploading process is unable to detect the delimiter.- Returns:
- Current errorMessageUndeterminedDelimiter value. Default value is "We were unable to guess the delimiter"
-
setErrorMessageUnterminatedQuote
public BatchUploader setErrorMessageUnterminatedQuote(String errorMessageUnterminatedQuote) throws IllegalStateException Error message to show when the uploading process detects an unterminated quote string in the first line.- Parameters:
errorMessageUnterminatedQuote
- New errorMessageUnterminatedQuote value. Default value is "Unterminated quote string - problem found in the first line at character position: ${errorOffset}."- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getErrorMessageUnterminatedQuote
Error message to show when the uploading process detects an unterminated quote string in the first line.- Returns:
- Current errorMessageUnterminatedQuote value. Default value is "Unterminated quote string - problem found in the first line at character position: ${errorOffset}."
-
getGrid
Grid which will show a preview of data to be uploaded, with errors flaggedThis component is an AutoChild named "grid". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current grid value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setGridFields
Fields to apply togrid
. These will override the field definitions in theuploadDataSource
on a field by field basis, as described underDataBoundComponent.fields
.- Parameters:
gridFields
- New gridFields value. Default value is null- Returns:
BatchUploader
instance, for chaining setter calls
-
getGridFields
Fields to apply togrid
. These will override the field definitions in theuploadDataSource
on a field by field basis, as described underDataBoundComponent.fields
.- Returns:
- Current gridFields value. Default value is null
-
getNextButton
Button that scrolls grid to the next error.This component is an AutoChild named "nextButton". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current nextButton value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setNextButtonTitle
Title for thenext error button
.- Parameters:
nextButtonTitle
- New nextButtonTitle value. Default value is "Next error"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getNextButtonTitle
Title for thenext error button
.- Returns:
- Current nextButtonTitle value. Default value is "Next error"
-
setPartialCommit
Specifies what action to take if the user attempts to commit a partially validated set of data (ie, one that still contains some errors).- Parameters:
partialCommit
- New partialCommit value. Default value is "prompt"- Returns:
BatchUploader
instance, for chaining setter calls
-
getPartialCommit
Specifies what action to take if the user attempts to commit a partially validated set of data (ie, one that still contains some errors).- Returns:
- Current partialCommit value. Default value is "prompt"
-
setPartialCommitConfirmationMessage
public BatchUploader setPartialCommitConfirmationMessage(String partialCommitConfirmationMessage) throws IllegalStateException Message to display after data has been committed, whenshowCommitConfirmation
is true.- Parameters:
partialCommitConfirmationMessage
- New partialCommitConfirmationMessage value. Default value is "Valid records added; some records remain in error"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getPartialCommitConfirmationMessage
Message to display after data has been committed, whenshowCommitConfirmation
is true.- Returns:
- Current partialCommitConfirmationMessage value. Default value is "Valid records added; some records remain in error"
-
setPartialCommitError
IfpartialCommit
is set to "prevent", the text to display to the user if they try to commit a dataset containing errors. By default, this text is "There are errors in your data. Please correct all errors before clicking Commit"- Parameters:
partialCommitError
- New partialCommitError value. Default value is See below- Returns:
BatchUploader
instance, for chaining setter calls
-
getPartialCommitError
IfpartialCommit
is set to "prevent", the text to display to the user if they try to commit a dataset containing errors. By default, this text is "There are errors in your data. Please correct all errors before clicking Commit"- Returns:
- Current partialCommitError value. Default value is See below
-
setPartialCommitPrompt
IfpartialCommit
is set to "prompt", the text to display to the user in the confirmation dialog. By default, this text is "There are errors in your data so it cannot all be saved. If you proceed, you will lose the records with errors. Click 'OK' to proceed anyway, or 'Cancel' to return to your data"- Parameters:
partialCommitPrompt
- New partialCommitPrompt value. Default value is See below- Returns:
BatchUploader
instance, for chaining setter calls
-
getPartialCommitPrompt
IfpartialCommit
is set to "prompt", the text to display to the user in the confirmation dialog. By default, this text is "There are errors in your data so it cannot all be saved. If you proceed, you will lose the records with errors. Click 'OK' to proceed anyway, or 'Cancel' to return to your data"- Returns:
- Current partialCommitPrompt value. Default value is See below
-
getPreviousButton
Button that scrolls grid to the previous error.This component is an AutoChild named "previousButton". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current previousButton value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setPreviousButtonTitle
public BatchUploader setPreviousButtonTitle(String previousButtonTitle) throws IllegalStateException Title for theprevious error button
.- Parameters:
previousButtonTitle
- New previousButtonTitle value. Default value is "Previous error"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getPreviousButtonTitle
Title for theprevious error button
.- Returns:
- Current previousButtonTitle value. Default value is "Previous error"
-
setRequestProperties
Object containing properties to send with every "add" request this batchUploader sends.- Parameters:
requestProperties
- New requestProperties value. Default value is null- Returns:
BatchUploader
instance, for chaining setter calls
-
getRequestProperties
Object containing properties to send with every "add" request this batchUploader sends.- Returns:
- Current requestProperties value. Default value is null
-
setShowCommitConfirmation
public BatchUploader setShowCommitConfirmation(Boolean showCommitConfirmation) throws IllegalStateException Whether to show thecommit message
after data is successfully committed.- Parameters:
showCommitConfirmation
- New showCommitConfirmation value. Default value is true- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getShowCommitConfirmation
Whether to show thecommit message
after data is successfully committed.- Returns:
- Current showCommitConfirmation value. Default value is true
-
setShowUploadForm
Should theuploadForm
be displayed.Setting this value to false will suppress the default upload interface for the BatchUploader. In this case sample data may be uploaded directly via the
uploadData()
method.Note : This is an advanced setting
- Parameters:
showUploadForm
- New showUploadForm value. Default value is true- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getShowUploadForm
Should theuploadForm
be displayed.Setting this value to false will suppress the default upload interface for the BatchUploader. In this case sample data may be uploaded directly via the
uploadData()
method.- Returns:
- Current showUploadForm value. Default value is true
-
setUpdatesRolledBackMessage
public BatchUploader setUpdatesRolledBackMessage(String updatesRolledBackMessage) throws IllegalStateException Message to display if at least one update was rolled back due to errors in another row. See thetransactions overview
for details of Smart GWT's automatic transactional updates feature- Parameters:
updatesRolledBackMessage
- New updatesRolledBackMessage value. Default value is "One or more updates were rolled-back due to errors on other rows"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getUpdatesRolledBackMessage
Message to display if at least one update was rolled back due to errors in another row. See thetransactions overview
for details of Smart GWT's automatic transactional updates feature- Returns:
- Current updatesRolledBackMessage value. Default value is "One or more updates were rolled-back due to errors on other rows"
-
getUploadButton
Button that triggers the upload.This component is an AutoChild named "uploadButton". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current uploadButton value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setUploadButtonTitle
Title for theupload button
.- Parameters:
uploadButtonTitle
- New uploadButtonTitle value. Default value is "Upload"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getUploadButtonTitle
Title for theupload button
.- Returns:
- Current uploadButtonTitle value. Default value is "Upload"
-
setUploadDataSource
DataSource used to save uploaded records. Should have an operation of type "add".Be careful to note that this is the DataSource representing your data as it will be persisted to your server. It is completely different from the special "batchUpload" DataSource which is used purely as a medium to upload the raw data to the server in the first place.
- Parameters:
uploadDataSource
- New uploadDataSource value. Default value is null- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getUploadDataSource
DataSource used to save uploaded records. Should have an operation of type "add".Be careful to note that this is the DataSource representing your data as it will be persisted to your server. It is completely different from the special "batchUpload" DataSource which is used purely as a medium to upload the raw data to the server in the first place.
- Returns:
- Current uploadDataSource value. Default value is null
-
setUploadDelimiter
The delimiter to use when importing character-delimited files. The default is comma (CSV).- Parameters:
uploadDelimiter
- New uploadDelimiter value. Default value is ","- Returns:
BatchUploader
instance, for chaining setter calls
-
getUploadDelimiter
The delimiter to use when importing character-delimited files. The default is comma (CSV).- Returns:
- Current uploadDelimiter value. Default value is ","
-
setUploadEncoding
On server-side, BatchUploader usesDataImport
to import uploaded files, specifically APIs takingjava.io.Reader
parameter.BatchUploader.uploadEncoding
setting defines the encoding, which will be used to create ajava.io.Reader
instance to read data from uploaded files. The default is "UTF-8".- Parameters:
uploadEncoding
- New uploadEncoding value. Default value is "UTF-8"- Returns:
BatchUploader
instance, for chaining setter calls
-
getUploadEncoding
On server-side, BatchUploader usesDataImport
to import uploaded files, specifically APIs takingjava.io.Reader
parameter.BatchUploader.uploadEncoding
setting defines the encoding, which will be used to create ajava.io.Reader
instance to read data from uploaded files. The default is "UTF-8".- Returns:
- Current uploadEncoding value. Default value is "UTF-8"
-
setUploadFieldPrefix
String to prepend to the names of the additional fields specified inuploadFormFields
before they are stored in the HttpSession on the server. This property provides a basic namespace facility, allowing you to avoid name collisions with existing session attributes.Example usage: if you have an additional field called "someDate" and you set uploadFieldPrefix to "myFields_", your additionalFormField will be available as an HttpSession attribute called "myFields_someDate"
- Parameters:
uploadFieldPrefix
- New uploadFieldPrefix value. Default value is null- Returns:
BatchUploader
instance, for chaining setter calls
-
getUploadFieldPrefix
String to prepend to the names of the additional fields specified inuploadFormFields
before they are stored in the HttpSession on the server. This property provides a basic namespace facility, allowing you to avoid name collisions with existing session attributes.Example usage: if you have an additional field called "someDate" and you set uploadFieldPrefix to "myFields_", your additionalFormField will be available as an HttpSession attribute called "myFields_someDate"
- Returns:
- Current uploadFieldPrefix value. Default value is null
-
getUploadFileItem
FileItem for selecting the file to upload.This component is an AutoChild named "uploadFileItem". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current uploadFileItem value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setUploadFileLabel
Title to display next to theFileItem
field where the user enters a filename to upload- Parameters:
uploadFileLabel
- New uploadFileLabel value. Default value is "Upload File"- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getUploadFileLabel
Title to display next to theFileItem
field where the user enters a filename to upload- Returns:
- Current uploadFileLabel value. Default value is "Upload File"
-
getUploadForm
Form used to specify file to upload, and any additional fields required.This component is an AutoChild named "uploadForm". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current uploadForm value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setUploadFormFields
Optional fields for the uploadForm.- Parameters:
uploadFormFields
- New uploadFormFields value. Default value is null- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getUploadFormFields
Optional fields for the uploadForm.- Returns:
- Current uploadFormFields value. Default value is null
-
setUploadOperation
OptionalDSRequest.operationId
for the "add" operation used to add new records to theuploadDataSource
.- Parameters:
uploadOperation
- New uploadOperation value. Default value is null- Returns:
BatchUploader
instance, for chaining setter calls- Throws:
IllegalStateException
- this property cannot be changed after the component has been created
-
getUploadOperation
OptionalDSRequest.operationId
for the "add" operation used to add new records to theuploadDataSource
.- Returns:
- Current uploadOperation value. Default value is null
-
setUploadQuoteString
The character used to quote strings. The default is double quotes.- Parameters:
uploadQuoteString
- New uploadQuoteString value. Default value is "\""- Returns:
BatchUploader
instance, for chaining setter calls
-
getUploadQuoteString
The character used to quote strings. The default is double quotes.- Returns:
- Current uploadQuoteString value. Default value is "\""
-
getUploadStatusMessages
Container for informational messages that are shown when a user attempts an upload. Appears above thegrid
.This component is an AutoChild named "uploadStatusMessages". For an overview of how to use and configure AutoChildren, see
Using AutoChildren
.- Returns:
- Current uploadStatusMessages value. Default value is null
- Throws:
IllegalStateException
- if this widget has not yet been rendered.
-
setWarnOnCancel
If set, indicates that a warning dialog should be shown when Cancel is clicked, asking the user to confirm that this is really what they want to do. The actual warning message is specified withcancelConfirmMessage
- Parameters:
warnOnCancel
- New warnOnCancel value. Default value is true- Returns:
BatchUploader
instance, for chaining setter calls
-
getWarnOnCancel
If set, indicates that a warning dialog should be shown when Cancel is clicked, asking the user to confirm that this is really what they want to do. The actual warning message is specified withcancelConfirmMessage
- Returns:
- Current warnOnCancel value. Default value is true
-
addBeforeCommitHandler
Add a beforeCommit handler.Notification method fired when the
BatchUploader.commitButton
is clicked.This notification occurs before actually committing data to the server. It allows to make changes to the data after user edits, but before it will be sent to server.
Read also
BatchUploader.previewShown()
docs for details how to change data in grid and for possibility to interrupt upload process on the server as well.- Specified by:
addBeforeCommitHandler
in interfaceHasBeforeCommitHandlers
- Parameters:
handler
- the beforeCommit handler- Returns:
HandlerRegistration
used to remove this handler
-
addPreviewShownHandler
Add a previewShown handler.Notification method fired when the
BatchUploader.grid
is populated with a new set of data for the user to preview before commit.This notification occurs after the user has uploaded a new data file, the data has been processed on the server, and the preview grid populated with the data ready for committing. Developers may use this notification to examine or modify the data set to be uploaded. The
ListGrid.data
object will be populated with the array of uploaded records, and standard grid APIs such asListGrid.getRowErrors()
,ListGrid.setEditValue()
, etc may be used to interact with this data.Note that developers wishing to manipulate the uploaded data can also do this on the server side when user hits the commit button to submit the data to the
BatchUploader.uploadDataSource
. This can be achieved by setting theBatchUploader.uploadOperation
to call a custom"add" type operation
on the target dataSource.- Specified by:
addPreviewShownHandler
in interfaceHasPreviewShownHandlers
- Parameters:
handler
- the previewShown handler- Returns:
HandlerRegistration
used to remove this handler
-
uploadData
This method assumes a developer has sample data in memory (for example a csv-formatted string), and invokes the dataSource upload operation directly, bypassing the uploadForm.The sample data will be available on the server via
values.pasteData
. This usage is expected and understood by the server side batchUpload dataSource.This method is most commonly used in conjunction with
showUploadForm:false
.- Parameters:
data
- formatted data to upload
-
setDefaultProperties
Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.
- Parameters:
batchUploaderProperties
- properties that should be used as new defaults when instances of this class are created- See Also:
-
setUploadFormItems
Synonym ofsetUploadFormFields(FormItem...)
.- Throws:
IllegalStateException
-
setLogicalStructure
Setter implementing theLogicalStructure
interface, which supports Eclipse's logical structure debugging facility. -
getLogicalStructure
Getter implementing theLogicalStructure
interface, which supports Eclipse's logical structure debugging facility.- Specified by:
getLogicalStructure
in interfaceLogicalStructure
- Overrides:
getLogicalStructure
in classVStack
-
uploadDelimiter