From a70bb4a0fcce5a600090350a1716a18d91f06283 Mon Sep 17 00:00:00 2001 From: antelder Date: Sun, 6 Dec 2009 10:40:57 +0000 Subject: Avoid NPE when sourec interface hasn't yet by introspected git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@887662 13f79535-47bb-0310-9956-ffa450edef68 --- .../sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'sca-java-2.x/trunk/modules') diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java index fa61ff8721..ad7985f91b 100644 --- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java +++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java @@ -260,6 +260,15 @@ public class RuntimeEndpointReferenceImpl extends EndpointReferenceImpl implemen // TODO - EPR why is this looking at the component types. The endpoint should have the right interface contract by this time //InterfaceContract targetContract = getLeafInterfaceContract(endpoint); + if (sourceContract == null) { + // TODO: until the web component introspection is brought up + try { + sourceContract = (InterfaceContract)targetContract.clone(); + } catch (CloneNotSupportedException e) { + throw new IllegalStateException(e); + } + } + RuntimeComponentReference reference = (RuntimeComponentReference)getReference(); for (Operation operation : sourceContract.getInterface().getOperations()) { Operation targetOperation = interfaceContractMapper.map(targetContract.getInterface(), operation); -- cgit v1.2.3