Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbvosburgh2007-11-30 18:02:36 +0000
committerbvosburgh2007-11-30 18:02:36 +0000
commitac4e719bcb7d9496f953f75402ac2219b8dd5c0e (patch)
tree4d1148176f6b4ae6e75c818332bee1d2d76461ec /jpa/plugins
parent61cd380bcb586cb3cd60db52e92cb8445955ebc2 (diff)
downloadwebtools.dali-ac4e719bcb7d9496f953f75402ac2219b8dd5c0e.tar.gz
webtools.dali-ac4e719bcb7d9496f953f75402ac2219b8dd5c0e.tar.xz
webtools.dali-ac4e719bcb7d9496f953f75402ac2219b8dd5c0e.zip
[203432] problems with invalid expressions
Diffstat (limited to 'jpa/plugins')
-rw-r--r--jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/jdtutility/ConversionDeclarationAnnotationElementAdapter.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/jdtutility/ConversionDeclarationAnnotationElementAdapter.java b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/jdtutility/ConversionDeclarationAnnotationElementAdapter.java
index f6cf01060f..abd0df9a31 100644
--- a/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/jdtutility/ConversionDeclarationAnnotationElementAdapter.java
+++ b/jpa/plugins/org.eclipse.jpt.core/src/org/eclipse/jpt/core/internal/jdtutility/ConversionDeclarationAnnotationElementAdapter.java
@@ -65,11 +65,19 @@ public class ConversionDeclarationAnnotationElementAdapter<T>
// ********** DeclarationAnnotationElementAdapter implementation **********
public T getValue(ModifiedDeclaration declaration) {
- return this.converter.convert(this.adapter.getValue(declaration));
+ Expression expression = this.adapter.getValue(declaration);
+ return this.converter.convert(expression);
}
public void setValue(T value, ModifiedDeclaration declaration) {
- this.adapter.setValue(this.converter.convert(value, declaration.getAST()), declaration);
+ Expression expression;
+ try {
+ expression = this.converter.convert(value, declaration.getAST());
+ } catch (IllegalArgumentException ex) {
+ // if there is a problem converting the 'value' to an Expression we get this exception
+ return; // don't set the value if it is "illegal"
+ }
+ this.adapter.setValue(expression, declaration);
}
public Expression expression(ModifiedDeclaration declaration) {

Back to the top