Note that there are some explanatory texts on larger screens.

plurals
  1. POjava.lang.AbstractMethodError running a webapp in Eclipse with jetty.
    text
    copied!<p>I am working on a project in eclipse that when I launch using the jetty plugin gives me a </p> <pre><code>java.lang.AbstractMethodError: au.com.mycopmpany.impl.MyClassDAOImpl.findById(Ljava/lang/Integer;)Ljava/lang/Object;. </code></pre> <p>This file compiles fine in Eclipse and the code is implementing the method that the error talks about. From my reading this error indicates that "at runtime" the JVM finds a class that doesn't have this method implemented.</p> <p>But I can assure you that the <code>MyClassDAOImpl</code> most definitely does have the <code>findById</code> method implemented with the correct signature.</p> <p>This seems like a bug in the Eclipse compiler; I can fix the issue by running <code>maven package</code> from a command prompt and then running the application within Eclipse works fine.</p> <p>It seems that the Eclipse compiler has some sort of bug in relation to this class. I did read something online about a bug with generics in the Eclipse compiler (which this class does use Generics) but this base class / interface is re-implemented over and over in our code base and it is this class that always has problems.</p> <p>Does anyone know a workaround, or better yet, a fix for this problem?</p> <p>I can replicate this exception every time, so if an Eclipse compiler developer reads this and this is a known issue, please feel free to contact me for assistance in tracking down the issue.</p> <p><strong>Update:</strong></p> <p>The class with the issue is one of many that implement <code>GenericDAO</code> where the Generic interface is defined as:</p> <pre><code>public interface GenericDAO&lt;T, TList&gt; </code></pre> <p>The method in question that is failing is:</p> <pre><code>public T findById(Integer integer) throws APIException; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload