Can you show me the code that causes this warning and let me know if
the warning is generated by a regular Java compiler or in an IDE?

Andreas

On Mon, Aug 2, 2010 at 23:22, Cencio1980 <[email protected]> wrote:
> Hi Andreas,
>
> the only issue is that i get the deprecation warning even if i call the
> method from a org.apache.axiom.om.impl.dom.ElementImpl instance...
>
> Lorenzo
>
> 2010/8/2 Andreas Veithen <[email protected]>
>
>> From an implementation point of view it is not really an issue. The
>> code in the NodeImpl#serialize(AndConsume) methods is valid, but it
>> will throw an exception if it is invoked on anything else then a
>> DocumentImpl or ElementImpl. Even if in the next major release, we
>> remove these methods from the OMNode interface (and only keep them on
>> the OMContainer interface), we could still leave the code as is in
>> NodeImpl. I agree that one could move that code further down the class
>> hierarchy (e.g. by creating a common superclass for DocumentImpl and
>> ElementImpl). That would probably improve the readability of the code,
>> but there is no issue here.
>>
>> On the other hand, from the point of view of the code using the Axiom
>> API, you are not supposed to refer directly to the NodeImpl and
>> ElementImpl classes. You would only use the OMNode or OMElement
>> interface. If your code invokes the serialize method on a reference of
>> type OMNode, you will get a deprecation warning (that was the whole
>> purpose of deprecating these methods). If your code uses an OMElement
>> reference, then you should not get a deprecation warning (at least
>> that was the conclusion when I tested this).
>>
>> To summarize, I don't really see how this is affecting you.
>>
>> Andreas
>>
>> On Mon, Aug 2, 2010 at 17:08, Cencio1980 <[email protected]> wrote:
>> > Hi all,
>> >
>> > abstract class org.apache.axiom.om.impl.dom.NodeImpl implements
>> deprecated
>> > methods required from interface org.apache.axiom.om.impl.OMNodeEx.
>> >
>> > Some of those methods (serialize and serializeAndConsume) are deprecated
>> > because:
>> > "This method is not meaningful on a node in general, but only on an
>> {...@link
>> > OMElement}."
>> >
>> >
>> > Now i have a org.apache.axiom.om.impl.dom.ElementImpl instance and it
>> > implements OMElement, but there isn't OMElement's serialize and
>> > serializeAndConsume methods implementation. It use inherit method from
>> > NodeImpl, and they are deprecated...
>> >
>> >
>> > There should be an implementation in
>> > org.apache.axiom.om.impl.dom.ElementImpl of that methods?
>> >
>> > Version used: Axiom 1.2.9
>> >
>> > Cheers,
>> > Lorenzo
>> >
>>
>

Reply via email to