Buggy code:
@ SuppressWarnings ( "deprecation" ) public class WebAppParser { private static final Logger LOG = LoggerFactory . getLogger ( WebAppParser . class ) ; private ServiceTracker < PackageAdmin , PackageAdmin > packageAdmin ; public WebAppParser ( ServiceTracker < PackageAdmin , PackageAdmin > packageAdmin ) { } public void parse ( final Bundle bundle , WebApp webApp ) throws Exception { } private Integer scanMajorVersion ( final Element rootElement ) { } private void tldScan ( final Bundle bundle , final WebApp webApp ) throws Exception { } private List < URL > scanWebFragments ( final Bundle bundle , final WebApp webApp ) throws Exception { } private void servletAnnotationScan ( final Bundle bundle , final WebApp webApp ) throws Exception { } private void servletContainerInitializerScan ( Bundle bundle , WebApp webApp , Integer majorVersion ) throws Exception { } private static void parseSecurity ( final Element rootElement , final WebApp webApp ) { } private static void parseContextParams ( final Element rootElement , final WebApp webApp ) { } private static void parseSessionConfig ( final Element rootElement , final WebApp webApp ) { } private static void parseServlets ( final Element rootElement , final WebApp webApp ) { } private static void parseFilters ( final Element rootElement , final WebApp webApp ) { } private static void parseListeners ( final Element rootElement , final WebApp webApp ) { } private static void parseErrorPages ( final Element rootElement , final WebApp webApp ) { final Element [ ] elements = getChildren ( rootElement , "error-page" ) ; if ( ( elements != null ) && ( ( elements . length ) > 0 ) ) { for ( Element element : elements ) { final WebAppErrorPage errorPage = new WebAppErrorPage ( ) ; errorPage . setErrorCode ( WebAppParser . getTextContent ( getChild ( element , "error-code" ) ) ) ; errorPage . setExceptionType ( WebAppParser . getTextContent ( getChild ( element , "exception-type" ) ) ) ; errorPage . setLocation ( WebAppParser . getTextContent ( getChild ( element , "location" ) ) ) ; <START_BUG> if ( ( ( errorPage . getErrorCode ( ) ) == null ) || ( ( errorPage . getExceptionType ( ) ) == null ) ) { <END_BUG> errorPage . setExceptionType ( ERROR_PAGE ) ; } webApp . addErrorPage ( errorPage ) ; } } } private static void parseWelcomeFiles ( final Element rootElement , final WebApp webApp ) { } private static void parseMimeMappings ( final Element rootElement , final WebApp webApp ) { } private static String getTextContent ( final Element element ) { } private static void addWebListener ( final WebApp webApp , String clazz ) { } private static String extractRootPath ( final Bundle bundle ) { } private static String stripPrefix ( String value , String prefix ) { } private static String stripSuffix ( String value , String suffix ) { } private static List < String > extractVirtualHostList ( final Bundle bundle ) { } private static List < String > extractConnectorList ( final Bundle bundle ) { } public static Boolean canSeeClass ( Bundle bundle , Class < ? > clazz ) { } private static boolean isJettyWebXml ( URL url ) { } }

Fix:
if ( ( ( errorPage . getErrorCode ( ) ) == null ) && ( ( errorPage . getExceptionType ( ) ) == null ) ) {