Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkmoore2009-10-06 15:33:37 +0000
committerkmoore2009-10-06 15:33:37 +0000
commita68e893e4e01394c4c3a67c63e51e89fef6d3a3c (patch)
tree856519ff9b39d3fa3d020f0e90a6b08362faa5ed
parent1c03b74088bbc120642ce9656db43346bfeb9fe4 (diff)
downloadwebtools.dali-a68e893e4e01394c4c3a67c63e51e89fef6d3a3c.tar.gz
webtools.dali-a68e893e4e01394c4c3a67c63e51e89fef6d3a3c.tar.xz
webtools.dali-a68e893e4e01394c4c3a67c63e51e89fef6d3a3c.zip
fixed problem displaying details page for null java attribute mappings
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/PersistentAttributeDetailsPage.java2
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/java/AbstractJavaResourceUiDefinition.java13
2 files changed, 11 insertions, 4 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/PersistentAttributeDetailsPage.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/PersistentAttributeDetailsPage.java
index d2acb52a23..635e2de858 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/PersistentAttributeDetailsPage.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/PersistentAttributeDetailsPage.java
@@ -171,7 +171,7 @@ public abstract class PersistentAttributeDetailsPage<T extends PersistentAttribu
}
public boolean accept(AttributeMapping mapping) {
- return (mapping == null) || this.mappingKey.equals(mapping.getKey());
+ return (mapping == null || this.mappingKey == null) || this.mappingKey.equals(mapping.getKey());
}
}
} \ No newline at end of file
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/java/AbstractJavaResourceUiDefinition.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/java/AbstractJavaResourceUiDefinition.java
index 9866f76e04..da11ca6f77 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/java/AbstractJavaResourceUiDefinition.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/details/java/AbstractJavaResourceUiDefinition.java
@@ -130,9 +130,7 @@ public abstract class AbstractJavaResourceUiDefinition
// ********** attributes mapping UI definitions **********
public JpaComposite buildAttributeMappingComposite(String key, PropertyValueModel<AttributeMapping> mappingHolder, Composite parent, WidgetFactory widgetFactory) {
-
- JavaAttributeMappingUiDefinition<AttributeMapping> mappingUiDefinition =
- (JavaAttributeMappingUiDefinition<AttributeMapping>) getSpecifiedAttributeMappingUiDefinition(key);
+ JavaAttributeMappingUiDefinition<AttributeMapping> mappingUiDefinition = getAttributeMappingUiDefinition(mappingHolder.getValue());
return mappingUiDefinition.buildAttributeMappingComposite(
getFactory(),
mappingHolder,
@@ -141,6 +139,15 @@ public abstract class AbstractJavaResourceUiDefinition
);
}
+ @SuppressWarnings("unchecked")
+ protected JavaAttributeMappingUiDefinition<AttributeMapping> getAttributeMappingUiDefinition(AttributeMapping attributeMapping) {
+ String key = attributeMapping == null ? null : attributeMapping.getKey();
+ if (attributeMapping == null || attributeMapping.isDefault()) {
+ return (JavaAttributeMappingUiDefinition<AttributeMapping>) getDefaultAttributeMappingUiDefinition(key);
+ }
+ return (JavaAttributeMappingUiDefinition<AttributeMapping>) getSpecifiedAttributeMappingUiDefinition(key);
+ }
+
protected JavaAttributeMappingUiDefinition<? extends AttributeMapping> getSpecifiedAttributeMappingUiDefinition(String mappingKey) {
for (JavaAttributeMappingUiDefinition<? extends AttributeMapping> definition : getSpecifiedAttributeMappingUiDefinitions()) {
if (Tools.valuesAreEqual(definition.getKey(), mappingKey)) {

Back to the top