diff --git a/src/main/java/org/wildfly/transaction/client/RemoteTransaction.java b/src/main/java/org/wildfly/transaction/client/RemoteTransaction.java index dd963a3..a709403 100644 --- a/src/main/java/org/wildfly/transaction/client/RemoteTransaction.java +++ b/src/main/java/org/wildfly/transaction/client/RemoteTransaction.java @@ -219,7 +219,12 @@ public void setLocation(URI location) throws IllegalArgumentException, IllegalSt } catch (GeneralSecurityException e) { throw new IllegalArgumentException(e); } - final SimpleTransactionControl control = provider.getPeerHandle(location, sslContext, authenticationConfiguration).begin(getEstimatedRemainingTime()); + final SimpleTransactionControl control; + if(stateRef.get() instanceof Located) { + control = null; + } else { + control = provider.getPeerHandle(location, sslContext, authenticationConfiguration).begin(getEstimatedRemainingTime()); + } try { stateRef.get().join(stateRef, location, control); } catch (Throwable t) {