It's all about the answers!

Ask a question

Jazz Distributed SCM Component Deliver Failed Error:"Error invoking remote service at....."


1
1
Ahmet Emir Kesim (3623) | asked Apr 29 '14, 8:01 a.m.
 Hi,

In my project, I'm supposed to created distributed SCM between RTC server in corporation domain and RTC server at outside the domain but these two RTC are communicating with eachother. My aim is to deliver components from one server to another with changing flow targets. I'm able to change flow target to server outside the domain but when I try to deliver component, returns error below;

Error screenshot

Note: I'm able to deliver change sets to server outside the domain from the client inside the domain.

Any help or advise would be nice

Comments
sam detweiler commented Apr 29 '14, 8:19 a.m.

is there a firewall between between inside and outside?  note that the communications between servers is both ways, while communications from the client to the server is one way.

also, do both servers have distributed SCM enabled in their ccm advanced admin.
you also need to make the servers friends.


Ahmet Emir Kesim commented Apr 29 '14, 9:18 a.m. | edited Apr 29 '14, 9:20 a.m.

 Hi sam,


When I try to make servers friend, I get this error from the server(/jazz/admin web interface) outside the domain ;


sam detweiler commented Apr 29 '14, 9:25 a.m. | edited Apr 29 '14, 9:48 a.m.

where is 'outside'? the internet?    10.  network domains, like 192.168. are not routable.
https://www.mtmnet.com/PDF_FILES/NonRoutableIPaddresses.PDF
so I suspect that the address needs to be the address of the firewall & port and there is some port forwarding that goes on under the covers.

my external address, provided by my ISP is 108., but my rtc server is on 192.168. internally.


Ahmet Emir Kesim commented Apr 29 '14, 9:38 a.m.

 What I mean by outside is area outside the company domain that can be connected from outside of the company with some VPN configurations. Our network starts with 10.** address.


What I don't understand is this "networking error" caused by firewall restrictions or mistakes that I did while trying to make servers friend.


Ahmet Emir Kesim commented Apr 29 '14, 9:40 a.m.

Also , I'm trying to apply  https://jazz.net/library/article/535/ ,but still I get  that error " An error occurred while requesting an oAuth cosumer key from server..."


sam detweiler commented Apr 29 '14, 9:53 a.m.

I think you are using the wrong address for the internal server from outside.

either
1. you must connect via VPN BEFORE making the friends config so yhat the external server is logically on your 10. company network. (some vpn's don't allow just any port traffic)
2. you MUST use the address of the firewall, and port AND the firewall must do port forwarding to get the incoming requested address mapped to the internal 10. address and port.

I do this on my personal system, map 108.xxx.xxx.xxx:443  to 192.168.2.xx:9443  internally, so that the server can be accessed from somewhere outside my home.


Ralph Schoon commented Apr 29 '14, 9:59 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER

Using IP Addresses in the public URI of the servers is also not a good practice. You should use fully qualified domain names for the hosts that are machine independent and are reachable via DNS.

showing 5 of 7 show 2 more comments

Accepted answer


permanent link
Ahmet Emir Kesim (3623) | answered Apr 30 '14, 7:59 a.m.
 We have figured this out by making servers connect each other with dns and I've successfully delivered component.

Thanks a lot for your valuable comments.
Ralph Schoon selected this answer as the correct answer

Comments
Tim Mok commented Apr 30 '14, 8:40 a.m.
JAZZ DEVELOPER

For future reference if others run into this problem, I noticed that the error shown in the answer below is the result of an unknown host exception. That probably means an issue with the DNS resolution.

One other answer



permanent link
Ralph Schoon (63.1k33645) | answered Apr 29 '14, 8:36 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Emir,

have you looked at https://jazz.net/library/article/1399 how to set this up?

I agree with Sam and the firewall concern. Can a client (or the server) from outside of the domain connect to the server inside the domain?
You only need to make the CCM Servers friends if you want to follow the work item links on change sets to both servers.

Is this an error message in the client, or in the server? I assume the client. Have you looked into the server CCM logs as well as into the client log (in the .metadata folder of the workspace)

Comments
sam detweiler commented Apr 29 '14, 8:44 a.m. | edited Apr 29 '14, 8:46 a.m.

Ralph,
I continue to disagree with you, please see the results for someone else
See Kevin's answer posted here (answered Apr 26, 5:30 a.m.)
https://jazz.net/forum/questions/149344/certificateexception-exception-on-cross-server-delivery

without the friends config,  I do not know how server 1 could logon to server 2 for the DSCM operations. unless you are saying that ANYONE could do these operations unauthenticated.


Ralph Schoon commented Apr 29 '14, 9:00 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER

I have created and done the whole workshop (on Tomcat) several times without creating any friends relationships.

I have in fact moved the server to another site (virtually) and deliver the changes to the 3rd server while there was no friends relationship whatsoever.

From my experience the friends relationship is not necessary for the distributed SCM. But we don't have to agree on this. Maybe someone else can show us the light.


Ahmet Emir Kesim commented Apr 29 '14, 9:07 a.m. | edited Apr 29 '14, 9:19 a.m.

Hi Ralph,  


Yes, I can connect server inside the domain from outside. There is firewall but it has configured to connect with each other.

Do I need to make servers friend if I don't want to follow the work item links on change sets to both servers ?

I get the error on client side and here are the logs ;

!ENTRY com.ibm.team.repository.rcp.ui 4 0 2014-04-29 15:57:10.933
!MESSAGE Error invoking remote service at https://gtjazzdev:9443/jazz/:  gtjazzdev
!STACK 0
com.ibm.team.repository.common.TeamRepositoryException: Error invoking remote service at https://gtjazzdev:9443/jazz/:  gtjazzdev
at com.ibm.team.scm.service.internal.replication.ReplicationUtil.postRawRequest(ReplicationUtil.java:1765)
at com.ibm.team.scm.service.internal.replication.ReplicationUtil.postDescribeReplication(ReplicationUtil.java:1723)
at com.ibm.team.scm.service.internal.replication.ReplicationUtil.doNegotiation(ReplicationUtil.java:1323)
at com.ibm.team.scm.service.internal.replication.ReplicationUtil.negotiateReplication(ReplicationUtil.java:1091)
at com.ibm.team.scm.service.internal.replication.ReplicationUtil.negotiateReplication(ReplicationUtil.java:1070)
at com.ibm.team.scm.service.internal.ScmService.updateComponents2(ScmService.java:4026)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:361)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:347)
at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56)
at com.sun.proxy.$Proxy1899.updateComponents2(null)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleMethod(AbstractTeamServerServlet.java:1421)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.executeMethod(AbstractTeamServerServlet.java:956)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.doPost(AbstractTeamServerServlet.java:729)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleRequest2(AbstractTeamServerServlet.java:2362)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleRequest(AbstractTeamServerServlet.java:2153)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.access$0(AbstractTeamServerServlet.java:2138)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet$1.service(AbstractTeamServerServlet.java:219)
at com.ibm.team.repository.internal.service.auth.impl.JAuthHandler$1.run(JAuthHandler.java:109)
at com.ibm.team.repository.servlet.AbstractTeamServerServlet.service(AbstractTeamServerServlet.java:1792)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:120)
at com.ibm.team.repository.server.servletbridge.JazzServlet.service(JazzServlet.java:74)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at com.ibm.team.repository.server.servletbridge.BridgeFilter.processDelegate(BridgeFilter.java:165)
at com.ibm.team.repository.server.servletbridge.BridgeFilter.doFilter(BridgeFilter.java:198)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:336)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:906)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:929)
at java.lang.Thread.run(Thread.java:761)
at com.ibm.team.repository.common.internal.marshal.util.MarshallerUtil.decodeExceptions(Unknown Source)
at com.ibm.team.repository.common.internal.marshal.util.MarshallerUtil.decodeExceptions(Unknown Source)
at com.ibm.team.repository.common.internal.marshal.util.MarshallerUtil.decodeFault(Unknown Source)
at com.ibm.team.repository.transport.client.RemoteTeamService.constructExceptionFromFault(Unknown Source)
at com.ibm.team.repository.transport.client.RemoteTeamService.executeMethod(Unknown Source)
at com.ibm.team.repository.transport.client.RemoteTeamService.invoke(Unknown Source)
at com.ibm.team.repository.transport.client.ServiceInvocationHandler.invoke(Unknown Source)
at $Proxy15.updateComponents2(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.ibm.team.repository.client.internal.ServiceInterfaceProxy.invokeServiceCall(Unknown Source)
at com.ibm.team.repository.client.internal.ServiceInterfaceProxy.invoke(Unknown Source)
at $Proxy15.updateComponents2(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.ibm.team.scm.client.internal.ScmServiceInterfaceProxy$2.run(Unknown Source)
at com.ibm.team.repository.client.internal.TeamRepository$3.run(Unknown Source)
at com.ibm.team.repository.common.transport.CancelableCaller.call(Unknown Source)
at com.ibm.team.repository.client.internal.TeamRepository.callCancelableService(Unknown Source)
at com.ibm.team.scm.client.internal.ScmClientLibraryContext.callCancelableService(Unknown Source)
at com.ibm.team.scm.client.internal.ScmServiceInterfaceProxy.invokeCancelableService(Unknown Source)
at com.ibm.team.scm.client.internal.ScmServiceInterfaceProxy.invoke(Unknown Source)
at $Proxy15.updateComponents2(Unknown Source)
at com.ibm.team.scm.client.internal.FlowNodeConnection.applyComponentOperations(Unknown Source)
at com.ibm.team.scm.client.internal.FlowNodeConnection.applyComponentOperations(Unknown Source)
at com.ibm.team.scm.client.internal.FlowNodeConnection.applyComponentOperations(Unknown Source)
at com.ibm.team.filesystem.client.internal.operations.DeliverOperation.execute(Unknown Source)
at com.ibm.team.filesystem.client.internal.operations.FileSystemOperation.run(Unknown Source)
at com.ibm.team.filesystem.rcp.core.internal.changes.util.ComponentSyncModel.deliver(Unknown Source)
at com.ibm.team.filesystem.ui.changes.actions.DeliverAction$1.repositoryRun(Unknown Source)
at com.ibm.team.repository.rcp.ui.operations.RepositoryOperation.run(Unknown Source)
at com.ibm.team.repository.rcp.ui.operations.JobRunner.run(Unknown Source)
at com.ibm.team.repository.rcp.ui.operations.JobRunner$1.run(Unknown Source)
at org.eclipse.core.internal.jobs.Worker.run(Unknown Source)
Caused by: java.net.UnknownHostException: gtjazzdev
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:253)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:376)
at java.net.Socket.connect(Socket.java:546)
at com.ibm.team.scm.service.internal.replication.ReplicationUtil$SCMSSLSocketFactory.createSocket(ReplicationUtil.java:1507)
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
at com.ibm.team.scm.service.internal.replication.ReplicationUtil.postRawRequest(ReplicationUtil.java:1752)
... 94 more


Tim Mok commented Apr 29 '14, 9:18 a.m.
JAZZ DEVELOPER

The friends configuration isn't necessary to deliver change sets between servers. However, it is useful if you want to link a work item to a change set on another server.


Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.