1 23 24 25 package com.sun.enterprise.tools.verifier.tests.web.ias; 26 27 28 import com.sun.enterprise.tools.verifier.tests.web.elements.*; 29 import com.sun.enterprise.tools.verifier.tests.web.WebTest; 30 import com.sun.enterprise.tools.verifier.tests.web.WebCheck; 31 import java.util.*; 32 import com.sun.enterprise.deployment.*; 33 import com.sun.enterprise.deployment.web.*; 34 import com.sun.enterprise.tools.verifier.*; 35 import com.sun.enterprise.tools.verifier.tests.*; 36 import com.sun.enterprise.tools.common.dd.webapp.*; 37 38 41 43 public class ASServlet extends WebTest implements WebCheck { 44 45 46 47 public Result check(WebBundleDescriptor descriptor) { 48 49 Result result = getInitializedResult(); 50 WebComponentNameConstructor compName = new WebComponentNameConstructor(descriptor); 51 Servlet[] servlets = descriptor.getIasWebApp().getServlet(); String servletName; 54 String prinName; 55 boolean oneFailed = false; 56 if (servlets !=null && servlets.length > 0) { 58 for (int rep=0; rep<servlets.length; rep++ ) { 59 servletName=servlets[rep].getServletName(); prinName=servlets[rep].getPrincipalName().trim(); 65 if(validServletName(servletName,descriptor)){ 66 67 result.passed(smh.getLocalString 68 (getClass().getName() + ".passed", 69 "PASSED [AS-WEB servlet] servlet-name [ {0} ] properly defined in the war file.", 70 new Object [] {servletName})); 71 72 }else{ 73 74 result.failed(smh.getLocalString 75 (getClass().getName() + ".failed", 76 "FAILED [AS-WEB servlet] servlet-name [ {0} ] is not a valid, either empty or not defined in web.xml.", 77 new Object [] {servletName})); 78 oneFailed = true; 79 80 } 81 82 if(prinName !=null && ! "".equals(prinName)){ 83 84 result.passed(smh.getLocalString 85 (getClass().getName() + ".passed1", 86 "PASSED [AS-WEB servlet] principal-name [ {0} ] properly defined in the war file.", 87 new Object [] {prinName})); 88 }else{ 89 90 result.failed(smh.getLocalString 91 (getClass().getName() + ".failed1", 92 "FAILED [AS-WEB servlet ] principal-name [ {0} ] cannot be an empty string.", 93 new Object [] {prinName})); 94 oneFailed = true; 95 96 } 97 98 } 99 } else { 100 result.notApplicable(smh.getLocalString 101 (getClass().getName() + ".notApplicable", 102 "NOT APPLICABLE [AS-WEB sun-web-app] servlet element(s) not defined in the web archive [ {0} ].", 103 new Object [] {descriptor.getName()})); 104 return result; 105 } 106 107 if (oneFailed) 108 { 109 result.setStatus(Result.FAILED); 110 } else { 111 result.passed 112 (smh.getLocalString 113 (getClass().getName() + ".passed2", 114 "PASSED [AS-WEB sun-web-app] servlet element(s) are valid within the web archive [ {0} ] .", 115 new Object [] {descriptor.getName()} )); 116 } 117 return result; 118 } 119 120 boolean validServletName(String servletName, WebBundleDescriptor descriptor){ 121 boolean valid=false; 122 if (servletName != null && servletName.length() != 0) { 123 Set servlets = descriptor.getServletDescriptors(); 124 Iterator itr = servlets.iterator(); 125 while (itr.hasNext()) { 127 ServletDescriptor servlet = (ServletDescriptor) itr.next(); 128 String thisServletName = servlet.getCanonicalName(); 129 if (servletName.equals(thisServletName)) { 130 valid = true; 131 break; 132 } 133 } 134 135 } 136 return valid; 137 } 138 } 139 140 | Popular Tags |