
|
If you were logged in you would be able to see more operations.
|
|
|
|
Environment:
|
Java 1.5, Windows XP
|
|
| Resolution Date: |
20/Nov/09 01:19 AM
|
|
If isSkippedAnonymousType() is called on a SchemaType instance that does not have _outerSchemaTypeRef set, then a NPE will be thrown. Example:
MyXmlBean myBean = MyXmlBean.Factory.newInstance();
boolean isSkipped = myBean.schemaType().isSkippedAnonymousType(); <- throws a NPE
It seems that it should return false in this instance, rather than throw an exception. All this needs to fix is to add a null check. I'm not sure which versions exactly are effected, but it is an issue in 2.1.
Current code:
public boolean isSkippedAnonymousType()
{ return _outerSchemaTypeRef.get().getBaseType() == this ||
_outerSchemaTypeRef.get().getContentBasedOnType() == this; }
Potential fix:
public boolean isSkippedAnonymousType()
{ return _outerSchemaTypeRef == null ? false : _outerSchemaTypeRef.get().getBaseType() == this ||
_outerSchemaTypeRef.get().getContentBasedOnType() == this; }
|
|
Description
|
If isSkippedAnonymousType() is called on a SchemaType instance that does not have _outerSchemaTypeRef set, then a NPE will be thrown. Example:
MyXmlBean myBean = MyXmlBean.Factory.newInstance();
boolean isSkipped = myBean.schemaType().isSkippedAnonymousType(); <- throws a NPE
It seems that it should return false in this instance, rather than throw an exception. All this needs to fix is to add a null check. I'm not sure which versions exactly are effected, but it is an issue in 2.1.
Current code:
public boolean isSkippedAnonymousType()
{ return _outerSchemaTypeRef.get().getBaseType() == this ||
_outerSchemaTypeRef.get().getContentBasedOnType() == this; }
Potential fix:
public boolean isSkippedAnonymousType()
{ return _outerSchemaTypeRef == null ? false : _outerSchemaTypeRef.get().getBaseType() == this ||
_outerSchemaTypeRef.get().getContentBasedOnType() == this; } |
Show » |
|