From aade73a87634348df68ea9b5e108b31ec6209e61 Mon Sep 17 00:00:00 2001 From: Ted Jones Date: Fri, 8 Feb 2013 12:20:18 -0600 Subject: [PATCH] teiiddes-1364: Changed WSDL validation page to allow continuing when only warnings occur. --- .../designer/webservice/ui/i18n.properties | 2 ++ .../ui/wizard/ImportWsdlValidationPage.java | 36 +++++++++++++++---- 2 files changed, 32 insertions(+), 6 deletions(-) diff --git a/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/i18n.properties b/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/i18n.properties index 615f9e6e2a..856d9e18d6 100644 --- a/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/i18n.properties +++ b/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/i18n.properties @@ -438,6 +438,8 @@ ImportWsdlValidationPage.objectHeader=wsdl file ImportWsdlValidationPage.lineNumber=line number ImportWsdlValidationPage.title=Validation Problems ImportWsdlValidationPage.One_or_more_selected_WSDL_files_have_errors=One or more selected WSDL files have errors. Please correct or remove the file(s)to proceed. +ImportWsdlValidationPage.One_or_more_selected_WSDL_files_have_warnings=One or more selected WSDL files have warnings. Proceeding with warnings may cause issues with model generation. + #================================================================================================================================= # SelectWsdlOperationsPage diff --git a/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/wizard/ImportWsdlValidationPage.java b/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/wizard/ImportWsdlValidationPage.java index 08aa177590..70b02c6392 100644 --- a/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/wizard/ImportWsdlValidationPage.java +++ b/plugins/org.teiid.designer.webservice.ui/src/org/teiid/designer/webservice/ui/wizard/ImportWsdlValidationPage.java @@ -101,7 +101,7 @@ public class ImportWsdlValidationPage extends AbstractWizardPage */ List wsdlValidationMessages; - private boolean wsdlsHaveErrors = true; + private boolean wsdlsHaveErrors = false; /** * Constructs a WsdlValidationPage using the specified builder. @@ -143,8 +143,10 @@ public void createControl( Composite theParent ) { */ @Override public boolean canFlipToNextPage() { - // if no WSDLs identified don't let the next page show - return !wsdlsHaveErrors && super.canFlipToNextPage(); + // if no WSDLs identified don't let the next page show. Only prevent navigation if an error + // exist. + + return !wsdlsHaveErrors && super.canFlipToNextPage(); } /** @@ -458,6 +460,27 @@ public void setVisible( boolean theShowFlag ) { public boolean hasValidationMessages() { return wsdlValidationMessages.size() > 0; } + + /** + * Check to see if there are any validation error (not just warning) messages for display. + * + * @return boolean + * @since 8.1 + */ + public boolean hasValidationErrors() { + wsdlsHaveErrors = false; + Iterator messageIter = wsdlValidationMessages.listIterator(); + while (messageIter.hasNext()){ + IValidationMessage message = (IValidationMessage)messageIter.next(); + if (message.getSeverity() == IValidationMessage.SEV_ERROR){ + wsdlsHaveErrors = true; + } + } + + return wsdlsHaveErrors; + } + + /** * Setter for wsdl validation messages related to currently selected wsdl files. @@ -504,12 +527,13 @@ public void clearValidationMessages() { */ private void validatePage() { /* - * Check to see if any WSDLs have any validation messages. + * Check to see if any WSDLs have any validation errors and/or warnings. */ - if (hasValidationMessages()) { + if (hasValidationErrors()) { WizardUtil.setPageComplete(this, getString("One_or_more_selected_WSDL_files_have_errors"), IMessageProvider.ERROR); //$NON-NLS-1$ + }else if(hasValidationMessages()){ + WizardUtil.setPageComplete(this, getString("One_or_more_selected_WSDL_files_have_warnings"), IMessageProvider.WARNING); //$NON-NLS-1$ } - } Image getStatusImage( final int severity ) {