<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.9.2 at 19 Sep 2022 
 | Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20220919" />
    <meta http-equiv="Content-Language" content="en" />
    <title>jUDDI Core Services &#x2013; FindBugs Bug Detector Report</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />
      <script type="text/javascript" src="./js/apache-maven-fluido-1.6.min.js"></script>
      </head>
    <body class="topBarEnabled">
                      <a href="https://github.com/apache/juddi">
      <img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10000;"
        src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png"
        alt="Fork me on GitHub">
    </a>
      <div id="topbar" class="navbar navbar-fixed-top ">
      <div class="navbar-inner">
        <div class="container-fluid">
        <a data-target=".nav-collapse" data-toggle="collapse" class="btn btn-navbar">
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </a>
            <ul class="nav">
        <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Parent Project <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li><a href="../index.html" title="jUDDI_v3 Parent">jUDDI_v3 Parent</a></li>
        </ul>
      </li>
        <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
        <ul class="dropdown-menu">
            <li class="dropdown-submenu">
<a href="project-info.html" title="Project Information">Project Information</a>
              <ul class="dropdown-menu">
                  <li><a href="integration.html" title="CI Management">CI Management</a></li>
                  <li><a href="dependencies.html" title="Dependencies">Dependencies</a></li>
                  <li><a href="dependency-info.html" title="Dependency Information">Dependency Information</a></li>
                  <li><a href="dependency-management.html" title="Dependency Management">Dependency Management</a></li>
                  <li><a href="distribution-management.html" title="Distribution Management">Distribution Management</a></li>
                  <li><a href="index.html" title="About">About</a></li>
                  <li><a href="issue-tracking.html" title="Issue Management">Issue Management</a></li>
                  <li><a href="license.html" title="Licenses">Licenses</a></li>
                  <li><a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a></li>
                  <li><a href="plugin-management.html" title="Plugin Management">Plugin Management</a></li>
                  <li><a href="plugins.html" title="Plugins">Plugins</a></li>
                  <li><a href="team-list.html" title="Team">Team</a></li>
                  <li><a href="source-repository.html" title="Source Code Management">Source Code Management</a></li>
                  <li><a href="project-summary.html" title="Summary">Summary</a></li>
              </ul>
            </li>
            <li class="dropdown-submenu">
<a href="project-reports.html" title="Project Reports">Project Reports</a>
              <ul class="dropdown-menu">
                  <li><a href="apidocs/index.html" title="Javadoc">Javadoc</a></li>
                  <li><a href="testapidocs/index.html" title="Test Javadoc">Test Javadoc</a></li>
                  <li><a href="jdepend-report.html" title="JDepend">JDepend</a></li>
                  <li><a href="xref/index.html" title="Source Xref">Source Xref</a></li>
                  <li><a href="xref-test/index.html" title="Test Source Xref">Test Source Xref</a></li>
                  <li><a href="findbugs.html" title="FindBugs">FindBugs</a></li>
                  <li><a href="jira-report.html" title="JIRA Report">JIRA Report</a></li>
              </ul>
            </li>
        </ul>
      </li>
              </ul>
            </div>
        </div>
      </div>
    </div>
    <div class="container-fluid">
      <div id="banner">
        <div class="pull-left"><a href=".." id="bannerLeft"><img src="../images/logo.png"  alt="Apache jUDDI"/></a></div>
        <div class="pull-right"><div id="bannerRight"><img src="../images/apache_feather.gif" /></div>
</div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
        <li class=""><a href="http://www.apache.org/" class="externalLink" title="Apache">Apache</a><span class="divider">/</span></li>
      <li class=""><a href="index.html" title="jUDDI Core Services">jUDDI Core Services</a><span class="divider">/</span></li>
    <li class="active ">FindBugs Bug Detector Report</li>
        <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 19 Sep 2022</li>
          <li id="projectVersion" class="pull-right">Version: 3.3.11-SNAPSHOT</li>
        </ul>
      </div>
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
<ul class="nav nav-list">
          <li class="nav-header">Parent Project</li>
    <li><a href="../index.html" title="jUDDI_v3 Parent"><span class="none"></span>jUDDI_v3 Parent</a>  </li>
          <li class="nav-header">Project Documentation</li>
    <li><a href="project-info.html" title="Project Information"><span class="icon-chevron-right"></span>Project Information</a>  </li>
    <li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-down"></span>Project Reports</a>
      <ul class="nav nav-list">
    <li><a href="apidocs/index.html" title="Javadoc"><span class="none"></span>Javadoc</a>  </li>
    <li><a href="testapidocs/index.html" title="Test Javadoc"><span class="none"></span>Test Javadoc</a>  </li>
    <li><a href="jdepend-report.html" title="JDepend"><span class="none"></span>JDepend</a>  </li>
    <li><a href="xref/index.html" title="Source Xref"><span class="none"></span>Source Xref</a>  </li>
    <li><a href="xref-test/index.html" title="Test Source Xref"><span class="none"></span>Test Source Xref</a>  </li>
    <li class="active"><a href="#"><span class="none"></span>FindBugs</a>
  </li>
    <li><a href="jira-report.html" title="JIRA Report"><span class="none"></span>JIRA Report</a>  </li>
      </ul>
  </li>
  </ul>
<form id="search-form" action="https://www.google.com/search" method="get" >
      <input value="$sitesearchValue" name="sitesearch" type="hidden"/>
  <input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript">asyncJs( 'https://cse.google.com/brand?form=search-form' )</script>
          <hr />
          <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
  <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
              </div>
          </div>
        </div>
        <div id="bodyColumn"  class="span10" >
<section>
<h2><a name="FindBugs_Bug_Detector_Report"></a>FindBugs Bug Detector Report</h2>
<p>The following document contains the results of <a class="externalLink" href="http://findbugs.sourceforge.net">FindBugs</a></p>
<p>FindBugs Version is <i>3.0.1</i></p>
<p>Threshold is <i>medium</i></p>
<p>Effort is <i>min</i></p></section><section>
<h2><a name="Summary"></a>Summary</h2>
<table border="0" class="table table-striped">
<tr class="a">
<th>Classes</th>
<th>Bugs</th>
<th>Errors</th>
<th>Missing Classes</th></tr>
<tr class="b">
<td>256</td>
<td>87</td>
<td>0</td>
<td>0</td></tr></table></section><section>
<h2><a name="Files"></a>Files</h2>
<table border="0" class="table table-striped">
<tr class="a">
<th>Class</th>
<th>Bugs</th></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.impl.UDDIPublicationImpl">org.apache.juddi.api.impl.UDDIPublicationImpl</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.api.impl.UDDIReplicationImpl">org.apache.juddi.api.impl.UDDIReplicationImpl</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.impl.UDDIServiceCounter">org.apache.juddi.api.impl.UDDIServiceCounter</a></td>
<td>4</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.api.impl.UDDIValueSetCachingImpl">org.apache.juddi.api.impl.UDDIValueSetCachingImpl</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.impl.XRegisterHelper">org.apache.juddi.api.impl.XRegisterHelper</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.api.util.InquiryQuery">org.apache.juddi.api.util.InquiryQuery</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.util.JUDDIQuery">org.apache.juddi.api.util.JUDDIQuery</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.api.util.PublicationQuery">org.apache.juddi.api.util.PublicationQuery</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.util.QueryStatus">org.apache.juddi.api.util.QueryStatus</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.api.util.ReplicationQuery">org.apache.juddi.api.util.ReplicationQuery</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.util.SecurityQuery">org.apache.juddi.api.util.SecurityQuery</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.api.util.SubscriptionListenerQuery">org.apache.juddi.api.util.SubscriptionListenerQuery</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.util.SubscriptionQuery">org.apache.juddi.api.util.SubscriptionQuery</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.api.util.ValueSetCachingQuery">org.apache.juddi.api.util.ValueSetCachingQuery</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.api.util.ValueSetValidationQuery">org.apache.juddi.api.util.ValueSetValidationQuery</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.config.AppConfig">org.apache.juddi.config.AppConfig</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.mapping.MappingApiToModel">org.apache.juddi.mapping.MappingApiToModel</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.AuthToken">org.apache.juddi.model.AuthToken</a></td>
<td>6</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.BindingTemplate">org.apache.juddi.model.BindingTemplate</a></td>
<td>2</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.BusinessEntity">org.apache.juddi.model.BusinessEntity</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.BusinessService">org.apache.juddi.model.BusinessService</a></td>
<td>2</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.ChangeRecord">org.apache.juddi.model.ChangeRecord</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.ClientSubscriptionInfo">org.apache.juddi.model.ClientSubscriptionInfo</a></td>
<td>3</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.KeyDataValue">org.apache.juddi.model.KeyDataValue</a></td>
<td>3</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.ObjectTypeContent">org.apache.juddi.model.ObjectTypeContent</a></td>
<td>2</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.PublisherAssertion">org.apache.juddi.model.PublisherAssertion</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.Reference">org.apache.juddi.model.Reference</a></td>
<td>2</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.SignatureTransform">org.apache.juddi.model.SignatureTransform</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.SignatureTransformDataValue">org.apache.juddi.model.SignatureTransformDataValue</a></td>
<td>2</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.SignatureValue">org.apache.juddi.model.SignatureValue</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.SignedInfo">org.apache.juddi.model.SignedInfo</a></td>
<td>3</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.Subscription">org.apache.juddi.model.Subscription</a></td>
<td>7</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.SubscriptionChunkToken">org.apache.juddi.model.SubscriptionChunkToken</a></td>
<td>6</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.Tmodel">org.apache.juddi.model.Tmodel</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.model.TransferToken">org.apache.juddi.model.TransferToken</a></td>
<td>3</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.model.UddiEntity">org.apache.juddi.model.UddiEntity</a></td>
<td>3</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.query.FindEntityByCombinedCategoryQuery">org.apache.juddi.query.FindEntityByCombinedCategoryQuery</a></td>
<td>2</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.subscription.SubscriptionNotifier">org.apache.juddi.subscription.SubscriptionNotifier</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.subscription.notify.SMTPNotifier">org.apache.juddi.subscription.notify.SMTPNotifier</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.subscription.notify.USERFRIENDLYSMTPNotifier">org.apache.juddi.subscription.notify.USERFRIENDLYSMTPNotifier</a></td>
<td>1</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.validation.ValidateNode">org.apache.juddi.validation.ValidateNode</a></td>
<td>1</td></tr>
<tr class="a">
<td><a href="#org.apache.juddi.validation.ValidateReplication">org.apache.juddi.validation.ValidateReplication</a></td>
<td>2</td></tr>
<tr class="b">
<td><a href="#org.apache.juddi.validation.ValidateUDDIKey">org.apache.juddi.validation.ValidateUDDIKey</a></td>
<td>1</td></tr></table></section><a name="org.apache.juddi.api.impl.UDDIPublicationImpl"></a><section>
<h3><a name="org.apache.juddi.api.impl.UDDIPublicationImpl"></a>org.apache.juddi.api.impl.UDDIPublicationImpl</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>Return value of String.equalsIgnoreCase(String) ignored in org.apache.juddi.api.impl.UDDIPublicationImpl.setPublisherAssertions(String, Holder)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#RV_RETURN_VALUE_IGNORED">RV_RETURN_VALUE_IGNORED</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIPublicationImpl.html#L1018">1018</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.api.impl.UDDIReplicationImpl"></a><section>
<h3><a name="org.apache.juddi.api.impl.UDDIReplicationImpl"></a>org.apache.juddi.api.impl.UDDIReplicationImpl</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>Incorrect lazy initialization of static field org.apache.juddi.api.impl.UDDIReplicationImpl.queue in org.apache.juddi.api.impl.UDDIReplicationImpl.notifyConfigurationChange(ReplicationConfiguration, ReplicationConfiguration, AuthenticatedService)</td>
<td>MT_CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#LI_LAZY_INIT_STATIC">LI_LAZY_INIT_STATIC</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIReplicationImpl.html#L117">117-118</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>Redundant nullcheck of lastrecord which is known to be null in org.apache.juddi.api.impl.UDDIReplicationImpl.getChangeRecords(GetChangeRecords)</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE">RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIReplicationImpl.html#L1097">1097</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.api.impl.UDDIServiceCounter"></a><section>
<h3><a name="org.apache.juddi.api.impl.UDDIServiceCounter"></a>org.apache.juddi.api.impl.UDDIServiceCounter</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.api.impl.UDDIServiceCounter.getAttributes(String[]) makes inefficient use of keySet iterator instead of entrySet iterator</td>
<td>PERFORMANCE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#WMI_WRONG_MAP_ITERATOR">WMI_WRONG_MAP_ITERATOR</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIServiceCounter.html#L278">278</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.api.impl.UDDIServiceCounter.getAttributes(String[]) makes inefficient use of keySet iterator instead of entrySet iterator</td>
<td>PERFORMANCE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#WMI_WRONG_MAP_ITERATOR">WMI_WRONG_MAP_ITERATOR</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIServiceCounter.html#L263">263</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.api.impl.UDDIServiceCounter.getAttributes(String[]) makes inefficient use of keySet iterator instead of entrySet iterator</td>
<td>PERFORMANCE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#WMI_WRONG_MAP_ITERATOR">WMI_WRONG_MAP_ITERATOR</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIServiceCounter.html#L273">273</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.api.impl.UDDIServiceCounter.getAttributes(String[]) makes inefficient use of keySet iterator instead of entrySet iterator</td>
<td>PERFORMANCE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#WMI_WRONG_MAP_ITERATOR">WMI_WRONG_MAP_ITERATOR</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIServiceCounter.html#L268">268</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.api.impl.UDDIValueSetCachingImpl"></a><section>
<h3><a name="org.apache.juddi.api.impl.UDDIValueSetCachingImpl"></a>org.apache.juddi.api.impl.UDDIValueSetCachingImpl</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>Useless object stored in variable chunkToken of method org.apache.juddi.api.impl.UDDIValueSetCachingImpl.getAllValidValues(String, String, Holder, Holder)</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#UC_USELESS_OBJECT">UC_USELESS_OBJECT</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIValueSetCachingImpl.html#L88">88</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>Useless object stored in variable ret of method org.apache.juddi.api.impl.UDDIValueSetCachingImpl.getAllValidValues(String, String, Holder, Holder)</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#UC_USELESS_OBJECT">UC_USELESS_OBJECT</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/UDDIValueSetCachingImpl.html#L79">79</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.api.impl.XRegisterHelper"></a><section>
<h3><a name="org.apache.juddi.api.impl.XRegisterHelper"></a>org.apache.juddi.api.impl.XRegisterHelper</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>Exception is caught when Exception is not thrown in org.apache.juddi.api.impl.XRegisterHelper.handle(Clerk, Clerk, SubscriptionResultsList)</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#REC_CATCH_EXCEPTION">REC_CATCH_EXCEPTION</a></td>
<td><a href="./xref/org/apache/juddi/api/impl/XRegisterHelper.html#L152">152</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.api.util.InquiryQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.InquiryQuery"></a>org.apache.juddi.api.util.InquiryQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type InquiryQuery in org.apache.juddi.api.util.InquiryQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/InquiryQuery.html#L88">88</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.JUDDIQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.JUDDIQuery"></a>org.apache.juddi.api.util.JUDDIQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type JUDDIQuery in org.apache.juddi.api.util.JUDDIQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/JUDDIQuery.html#L116">116</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.PublicationQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.PublicationQuery"></a>org.apache.juddi.api.util.PublicationQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type PublicationQuery in org.apache.juddi.api.util.PublicationQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/PublicationQuery.html#L96">96</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.QueryStatus"></a><section>
<h3><a name="org.apache.juddi.api.util.QueryStatus"></a>org.apache.juddi.api.util.QueryStatus</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type QueryStatus in org.apache.juddi.api.util.QueryStatus.fromStatus(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/QueryStatus.html#L73">73</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.ReplicationQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.ReplicationQuery"></a>org.apache.juddi.api.util.ReplicationQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type ReplicationQuery in org.apache.juddi.api.util.ReplicationQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/ReplicationQuery.html#L78">78</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.SecurityQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.SecurityQuery"></a>org.apache.juddi.api.util.SecurityQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type SecurityQuery in org.apache.juddi.api.util.SecurityQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/SecurityQuery.html#L72">72</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.SubscriptionListenerQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.SubscriptionListenerQuery"></a>org.apache.juddi.api.util.SubscriptionListenerQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type SubscriptionListenerQuery in org.apache.juddi.api.util.SubscriptionListenerQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/SubscriptionListenerQuery.html#L71">71</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.SubscriptionQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.SubscriptionQuery"></a>org.apache.juddi.api.util.SubscriptionQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type SubscriptionQuery in org.apache.juddi.api.util.SubscriptionQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/SubscriptionQuery.html#L76">76</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.ValueSetCachingQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.ValueSetCachingQuery"></a>org.apache.juddi.api.util.ValueSetCachingQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type ValueSetCachingQuery in org.apache.juddi.api.util.ValueSetCachingQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/ValueSetCachingQuery.html#L70">70</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.api.util.ValueSetValidationQuery"></a><section>
<h3><a name="org.apache.juddi.api.util.ValueSetValidationQuery"></a>org.apache.juddi.api.util.ValueSetValidationQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type ValueSetValidationQuery in org.apache.juddi.api.util.ValueSetValidationQuery.fromQuery(String)</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/api/util/ValueSetValidationQuery.html#L69">69</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.config.AppConfig"></a><section>
<h3><a name="org.apache.juddi.config.AppConfig"></a>org.apache.juddi.config.AppConfig</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>Write to static field org.apache.juddi.config.AppConfig.propConfig from instance method org.apache.juddi.config.AppConfig.loadConfiguration()</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD">ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD</a></td>
<td><a href="./xref/org/apache/juddi/config/AppConfig.html#L110">110</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.mapping.MappingApiToModel"></a><section>
<h3><a name="org.apache.juddi.mapping.MappingApiToModel"></a>org.apache.juddi.mapping.MappingApiToModel</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>instanceof will always return true for all non-null values in org.apache.juddi.mapping.MappingApiToModel.mapOverviewDoc(OverviewDoc, OverviewDoc), since all org.uddi.api_v3.OverviewURL are instances of org.uddi.api_v3.OverviewURL</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#BC_VACUOUS_INSTANCEOF">BC_VACUOUS_INSTANCEOF</a></td>
<td><a href="./xref/org/apache/juddi/mapping/MappingApiToModel.html#L885">885</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.AuthToken"></a><section>
<h3><a name="org.apache.juddi.model.AuthToken"></a>org.apache.juddi.model.AuthToken</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.AuthToken.getCreated() may expose internal representation by returning AuthToken.created</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/AuthToken.html#L76">76</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.AuthToken.getLastUsed() may expose internal representation by returning AuthToken.lastUsed</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/AuthToken.html#L85">85</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>new org.apache.juddi.model.AuthToken(String, String, String, Date, Date, int, int) may expose internal representation by storing an externally mutable object into AuthToken.created</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/AuthToken.html#L50">50</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>new org.apache.juddi.model.AuthToken(String, String, String, Date, Date, int, int) may expose internal representation by storing an externally mutable object into AuthToken.lastUsed</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/AuthToken.html#L51">51</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.AuthToken.setCreated(Date) may expose internal representation by storing an externally mutable object into AuthToken.created</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/AuthToken.html#L79">79</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.AuthToken.setLastUsed(Date) may expose internal representation by storing an externally mutable object into AuthToken.lastUsed</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/AuthToken.html#L88">88</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.BindingTemplate"></a><section>
<h3><a name="org.apache.juddi.model.BindingTemplate"></a>org.apache.juddi.model.BindingTemplate</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>new org.apache.juddi.model.BindingTemplate(String, BusinessService, String, String, String, Date, BindingCategoryBag, List, List) may expose internal representation by storing an externally mutable object into BindingTemplate.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/BindingTemplate.html#L70">70</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>new org.apache.juddi.model.BindingTemplate(String, BusinessService, Date) may expose internal representation by storing an externally mutable object into BindingTemplate.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/BindingTemplate.html#L58">58</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.BusinessEntity"></a><section>
<h3><a name="org.apache.juddi.model.BusinessEntity"></a>org.apache.juddi.model.BusinessEntity</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>new org.apache.juddi.model.BusinessEntity(String, String, String, Date, List, List, List, List, List, List, BusinessCategoryBag, List, List) may expose internal representation by storing an externally mutable object into BusinessEntity.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/BusinessEntity.html#L70">70</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>new org.apache.juddi.model.BusinessEntity(String, Date) may expose internal representation by storing an externally mutable object into BusinessEntity.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/BusinessEntity.html#L56">56</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.BusinessService"></a><section>
<h3><a name="org.apache.juddi.model.BusinessService"></a>org.apache.juddi.model.BusinessService</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>new org.apache.juddi.model.BusinessService(String, BusinessEntity, Date) may expose internal representation by storing an externally mutable object into BusinessService.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/BusinessService.html#L55">55</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>new org.apache.juddi.model.BusinessService(String, BusinessEntity, Date, List, List, List, ServiceCategoryBag) may expose internal representation by storing an externally mutable object into BusinessService.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/BusinessService.html#L63">63</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.ChangeRecord"></a><section>
<h3><a name="org.apache.juddi.model.ChangeRecord"></a>org.apache.juddi.model.ChangeRecord</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.ChangeRecord.getContents() may expose internal representation by returning ChangeRecord.contents</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/ChangeRecord.html#L50">50</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.ChangeRecord.setContents(byte[]) may expose internal representation by storing an externally mutable object into ChangeRecord.contents</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/ChangeRecord.html#L54">54</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.ClientSubscriptionInfo"></a><section>
<h3><a name="org.apache.juddi.model.ClientSubscriptionInfo"></a>org.apache.juddi.model.ClientSubscriptionInfo</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>org.apache.juddi.model.ClientSubscriptionInfo.getLastNotified() may expose internal representation by returning ClientSubscriptionInfo.lastNotified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/ClientSubscriptionInfo.html#L80">80</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>new org.apache.juddi.model.ClientSubscriptionInfo(Clerk, Clerk, Date, String) may expose internal representation by storing an externally mutable object into ClientSubscriptionInfo.lastNotified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/ClientSubscriptionInfo.html#L58">58</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.ClientSubscriptionInfo.setLastNotified(Date) may expose internal representation by storing an externally mutable object into ClientSubscriptionInfo.lastNotified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/ClientSubscriptionInfo.html#L83">83</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.KeyDataValue"></a><section>
<h3><a name="org.apache.juddi.model.KeyDataValue"></a>org.apache.juddi.model.KeyDataValue</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>org.apache.juddi.model.KeyDataValue.getKeyDataValueBytes() may expose internal representation by returning KeyDataValue.keyDataValueBytes</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/KeyDataValue.html#L127">127</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>new org.apache.juddi.model.KeyDataValue(KeyInfo, String, String, byte[], String, KeyDataValue) may expose internal representation by storing an externally mutable object into KeyDataValue.keyDataValueBytes</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/KeyDataValue.html#L59">59</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.KeyDataValue.setKeyDataValueBytes(byte[]) may expose internal representation by storing an externally mutable object into KeyDataValue.keyDataValueBytes</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/KeyDataValue.html#L131">131</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.ObjectTypeContent"></a><section>
<h3><a name="org.apache.juddi.model.ObjectTypeContent"></a>org.apache.juddi.model.ObjectTypeContent</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>org.apache.juddi.model.ObjectTypeContent.getContent() may expose internal representation by returning ObjectTypeContent.content</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/ObjectTypeContent.html#L64">64</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.ObjectTypeContent.setContent(byte[]) may expose internal representation by storing an externally mutable object into ObjectTypeContent.content</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/ObjectTypeContent.html#L68">68</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.PublisherAssertion"></a><section>
<h3><a name="org.apache.juddi.model.PublisherAssertion"></a>org.apache.juddi.model.PublisherAssertion</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.PublisherAssertion.setModified(Date) may expose internal representation by storing an externally mutable object into PublisherAssertion.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/PublisherAssertion.html#L73">73</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.PublisherAssertion defines equals and uses Object.hashCode()</td>
<td>BAD_PRACTICE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#HE_EQUALS_USE_HASHCODE">HE_EQUALS_USE_HASHCODE</a></td>
<td><a href="./xref/org/apache/juddi/model/PublisherAssertion.html#L170">170-174</a></td>
<td>High</td></tr></table></section><a name="org.apache.juddi.model.Reference"></a><section>
<h3><a name="org.apache.juddi.model.Reference"></a>org.apache.juddi.model.Reference</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>org.apache.juddi.model.Reference.getDigestValue() may expose internal representation by returning Reference.digestValue</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/Reference.html#L93">93</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.Reference.setDigestValue(byte[]) may expose internal representation by storing an externally mutable object into Reference.digestValue</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/Reference.html#L97">97</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.SignatureTransform"></a><section>
<h3><a name="org.apache.juddi.model.SignatureTransform"></a>org.apache.juddi.model.SignatureTransform</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>Class org.apache.juddi.model.SignatureTransform defines non-transient non-serializable instance field reference</td>
<td>BAD_PRACTICE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#SE_BAD_FIELD">SE_BAD_FIELD</a></td>
<td>Not available</td>
<td>High</td></tr></table></section><a name="org.apache.juddi.model.SignatureTransformDataValue"></a><section>
<h3><a name="org.apache.juddi.model.SignatureTransformDataValue"></a>org.apache.juddi.model.SignatureTransformDataValue</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.SignatureTransformDataValue.getContentBytes() may expose internal representation by returning SignatureTransformDataValue.contentBytes</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/SignatureTransformDataValue.html#L74">74</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.SignatureTransformDataValue.setContentBytes(byte[]) may expose internal representation by storing an externally mutable object into SignatureTransformDataValue.contentBytes</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/SignatureTransformDataValue.html#L78">78</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.SignatureValue"></a><section>
<h3><a name="org.apache.juddi.model.SignatureValue"></a>org.apache.juddi.model.SignatureValue</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>org.apache.juddi.model.SignatureValue.getValue() may expose internal representation by returning SignatureValue.value</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/SignatureValue.html#L51">51</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.SignatureValue.setValue(byte[]) may expose internal representation by storing an externally mutable object into SignatureValue.value</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/SignatureValue.html#L55">55</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.SignedInfo"></a><section>
<h3><a name="org.apache.juddi.model.SignedInfo"></a>org.apache.juddi.model.SignedInfo</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>Class org.apache.juddi.model.SignedInfo defines non-transient non-serializable instance field canonicalizationMethod</td>
<td>BAD_PRACTICE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#SE_BAD_FIELD">SE_BAD_FIELD</a></td>
<td>Not available</td>
<td>High</td></tr>
<tr class="b">
<td>Class org.apache.juddi.model.SignedInfo defines non-transient non-serializable instance field reference</td>
<td>BAD_PRACTICE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#SE_BAD_FIELD">SE_BAD_FIELD</a></td>
<td>Not available</td>
<td>High</td></tr>
<tr class="a">
<td>Class org.apache.juddi.model.SignedInfo defines non-transient non-serializable instance field signatureMethod</td>
<td>BAD_PRACTICE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#SE_BAD_FIELD">SE_BAD_FIELD</a></td>
<td>Not available</td>
<td>High</td></tr></table></section><a name="org.apache.juddi.model.Subscription"></a><section>
<h3><a name="org.apache.juddi.model.Subscription"></a>org.apache.juddi.model.Subscription</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.Subscription.getCreateDate() may expose internal representation by returning Subscription.createDate</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/Subscription.html#L152">152</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.Subscription.getExpiresAfter() may expose internal representation by returning Subscription.expiresAfter</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/Subscription.html#L117">117</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.Subscription.getLastNotified() may expose internal representation by returning Subscription.lastNotified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/Subscription.html#L142">142</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.Subscription.setCreateDate(Date) may expose internal representation by storing an externally mutable object into Subscription.createDate</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/Subscription.html#L156">156</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.Subscription.setExpiresAfter(Date) may expose internal representation by storing an externally mutable object into Subscription.expiresAfter</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/Subscription.html#L120">120</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.Subscription.setLastNotified(Date) may expose internal representation by storing an externally mutable object into Subscription.lastNotified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/Subscription.html#L146">146</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.Subscription defines compareTo(Subscription) and uses Object.equals()</td>
<td>BAD_PRACTICE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EQ_COMPARETO_USE_OBJECT_EQUALS">EQ_COMPARETO_USE_OBJECT_EQUALS</a></td>
<td><a href="./xref/org/apache/juddi/model/Subscription.html#L160">160-162</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.SubscriptionChunkToken"></a><section>
<h3><a name="org.apache.juddi.model.SubscriptionChunkToken"></a>org.apache.juddi.model.SubscriptionChunkToken</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.SubscriptionChunkToken.getEndPoint() may expose internal representation by returning SubscriptionChunkToken.endPoint</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/SubscriptionChunkToken.html#L80">80</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.SubscriptionChunkToken.getExpiresAfter() may expose internal representation by returning SubscriptionChunkToken.expiresAfter</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/SubscriptionChunkToken.html#L97">97</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.SubscriptionChunkToken.getStartPoint() may expose internal representation by returning SubscriptionChunkToken.startPoint</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/SubscriptionChunkToken.html#L71">71</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.SubscriptionChunkToken.setEndPoint(Date) may expose internal representation by storing an externally mutable object into SubscriptionChunkToken.endPoint</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/SubscriptionChunkToken.html#L83">83</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.SubscriptionChunkToken.setExpiresAfter(Date) may expose internal representation by storing an externally mutable object into SubscriptionChunkToken.expiresAfter</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/SubscriptionChunkToken.html#L100">100</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.SubscriptionChunkToken.setStartPoint(Date) may expose internal representation by storing an externally mutable object into SubscriptionChunkToken.startPoint</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/SubscriptionChunkToken.html#L74">74</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.Tmodel"></a><section>
<h3><a name="org.apache.juddi.model.Tmodel"></a>org.apache.juddi.model.Tmodel</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>new org.apache.juddi.model.Tmodel(String, String, String, String, String, boolean, Date, List, List, List, TmodelCategoryBag) may expose internal representation by storing an externally mutable object into Tmodel.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/Tmodel.html#L69">69</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>new org.apache.juddi.model.Tmodel(String, String, Date) may expose internal representation by storing an externally mutable object into Tmodel.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/Tmodel.html#L56">56</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.TransferToken"></a><section>
<h3><a name="org.apache.juddi.model.TransferToken"></a>org.apache.juddi.model.TransferToken</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.TransferToken.getExpirationDate() may expose internal representation by returning TransferToken.expirationDate</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP">EI_EXPOSE_REP</a></td>
<td><a href="./xref/org/apache/juddi/model/TransferToken.html#L59">59</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>new org.apache.juddi.model.TransferToken(String, Date, List) may expose internal representation by storing an externally mutable object into TransferToken.expirationDate</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/TransferToken.html#L43">43</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.TransferToken.setExpirationDate(Date) may expose internal representation by storing an externally mutable object into TransferToken.expirationDate</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/TransferToken.html#L62">62</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.model.UddiEntity"></a><section>
<h3><a name="org.apache.juddi.model.UddiEntity"></a>org.apache.juddi.model.UddiEntity</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.model.UddiEntity.setCreated(Date) may expose internal representation by storing an externally mutable object into UddiEntity.created</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/UddiEntity.html#L64">64</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>org.apache.juddi.model.UddiEntity.setModified(Date) may expose internal representation by storing an externally mutable object into UddiEntity.modified</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/UddiEntity.html#L77">77</a></td>
<td>Medium</td></tr>
<tr class="a">
<td>org.apache.juddi.model.UddiEntity.setModifiedIncludingChildren(Date) may expose internal representation by storing an externally mutable object into UddiEntity.modifiedIncludingChildren</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#EI_EXPOSE_REP2">EI_EXPOSE_REP2</a></td>
<td><a href="./xref/org/apache/juddi/model/UddiEntity.html#L90">90</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.query.FindEntityByCombinedCategoryQuery"></a><section>
<h3><a name="org.apache.juddi.query.FindEntityByCombinedCategoryQuery"></a>org.apache.juddi.query.FindEntityByCombinedCategoryQuery</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>String is incompatible with expected argument type org.uddi.api_v3.KeyedReference in org.apache.juddi.query.FindEntityByCombinedCategoryQuery.select(EntityManager, FindQualifiers, CategoryBag, List, DynamicQuery$Parameter[])</td>
<td>CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#GC_UNRELATED_TYPES">GC_UNRELATED_TYPES</a></td>
<td><a href="./xref/org/apache/juddi/query/FindEntityByCombinedCategoryQuery.html#L182">182</a></td>
<td>High</td></tr>
<tr class="b">
<td>org.apache.juddi.query.FindEntityByCombinedCategoryQuery.select(EntityManager, FindQualifiers, CategoryBag, List, DynamicQuery$Parameter[]) makes inefficient use of keySet iterator instead of entrySet iterator</td>
<td>PERFORMANCE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#WMI_WRONG_MAP_ITERATOR">WMI_WRONG_MAP_ITERATOR</a></td>
<td><a href="./xref/org/apache/juddi/query/FindEntityByCombinedCategoryQuery.html#L159">159</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.subscription.SubscriptionNotifier"></a><section>
<h3><a name="org.apache.juddi.subscription.SubscriptionNotifier"></a>org.apache.juddi.subscription.SubscriptionNotifier</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>Boxing/unboxing to parse a primitive org.apache.juddi.subscription.SubscriptionNotifier.registryMayContainUpdates()</td>
<td>PERFORMANCE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#DM_BOXED_PRIMITIVE_FOR_PARSING">DM_BOXED_PRIMITIVE_FOR_PARSING</a></td>
<td><a href="./xref/org/apache/juddi/subscription/SubscriptionNotifier.html#L126">126</a></td>
<td>High</td></tr>
<tr class="a">
<td>Write to static field org.apache.juddi.subscription.SubscriptionNotifier.lastBadNotificationReset from instance method org.apache.juddi.subscription.SubscriptionNotifier.run()</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD">ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD</a></td>
<td><a href="./xref/org/apache/juddi/subscription/SubscriptionNotifier.html#L144">144</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.subscription.notify.SMTPNotifier"></a><section>
<h3><a name="org.apache.juddi.subscription.notify.SMTPNotifier"></a>org.apache.juddi.subscription.notify.SMTPNotifier</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>org.apache.juddi.subscription.notify.SMTPNotifier.mailProps should be package protected</td>
<td>MALICIOUS_CODE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#MS_PKGPROTECT">MS_PKGPROTECT</a></td>
<td><a href="./xref/org/apache/juddi/subscription/notify/SMTPNotifier.html#L73">73</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.subscription.notify.USERFRIENDLYSMTPNotifier"></a><section>
<h3><a name="org.apache.juddi.subscription.notify.USERFRIENDLYSMTPNotifier"></a>org.apache.juddi.subscription.notify.USERFRIENDLYSMTPNotifier</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>Exception is caught when Exception is not thrown in org.apache.juddi.subscription.notify.USERFRIENDLYSMTPNotifier.notifySubscriptionListener(NotifySubscriptionListener)</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#REC_CATCH_EXCEPTION">REC_CATCH_EXCEPTION</a></td>
<td><a href="./xref/org/apache/juddi/subscription/notify/USERFRIENDLYSMTPNotifier.html#L326">326</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.validation.ValidateNode"></a><section>
<h3><a name="org.apache.juddi.validation.ValidateNode"></a>org.apache.juddi.validation.ValidateNode</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>Exception is caught when Exception is not thrown in org.apache.juddi.validation.ValidateNode.validateNode(Node)</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#REC_CATCH_EXCEPTION">REC_CATCH_EXCEPTION</a></td>
<td><a href="./xref/org/apache/juddi/validation/ValidateNode.html#L113">113</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.validation.ValidateReplication"></a><section>
<h3><a name="org.apache.juddi.validation.ValidateReplication"></a>org.apache.juddi.validation.ValidateReplication</h3>
<table border="0" class="table table-striped">
<tr class="b">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="a">
<td>Inconsistent synchronization of org.apache.juddi.validation.ValidateReplication.ds; locked 40% of time</td>
<td>MT_CORRECTNESS</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#IS2_INCONSISTENT_SYNC">IS2_INCONSISTENT_SYNC</a></td>
<td><a href="./xref/org/apache/juddi/validation/ValidateReplication.html#L210">210</a></td>
<td>Medium</td></tr>
<tr class="b">
<td>Useless object stored in variable x of method org.apache.juddi.validation.ValidateReplication.validateTransfer(EntityManager, TransferCustody)</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#UC_USELESS_OBJECT">UC_USELESS_OBJECT</a></td>
<td><a href="./xref/org/apache/juddi/validation/ValidateReplication.html#L309">309</a></td>
<td>Medium</td></tr></table></section><a name="org.apache.juddi.validation.ValidateUDDIKey"></a><section>
<h3><a name="org.apache.juddi.validation.ValidateUDDIKey"></a>org.apache.juddi.validation.ValidateUDDIKey</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Bug</th>
<th>Category</th>
<th>Details</th>
<th>Line</th>
<th>Priority</th></tr>
<tr class="b">
<td>instanceof will always return true for all non-null values in org.apache.juddi.validation.ValidateUDDIKey.validateUDDIv3KeyGeneratorTModel(TModel), since all org.uddi.api_v3.KeyedReference are instances of org.uddi.api_v3.KeyedReference</td>
<td>STYLE</td>
<td><a class="externalLink" href="http://findbugs.sourceforge.net/bugDescriptions.html#BC_VACUOUS_INSTANCEOF">BC_VACUOUS_INSTANCEOF</a></td>
<td><a href="./xref/org/apache/juddi/validation/ValidateUDDIKey.html#L90">90</a></td>
<td>Medium</td></tr></table></section>
        </div>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>Copyright &copy;2004&#x2013;2022
<a href="https://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.</p>
        </div>
        </div>
    </footer>
    </body>
</html>
