Java Client API: dependencies and requirements?

If you are having a problem using Vault, post a message here.

Moderator: SourceGear

Post Reply
vonwyss
Posts: 14
Joined: Wed Jun 30, 2004 3:26 am

Java Client API: dependencies and requirements?

Post by vonwyss » Fri Nov 28, 2008 12:26 am

Hi!


We have tried to use the Java Client APIs to integrate Vault with Atlassians Bamboo product. The integration seems to work, but not on remote agents. Atlassian now claims that this may not work because the Vault library includes native (non-Java) code.

Can someone clarify:
- Does the Vault Java client library include non-Java parts?
- What are the requirements that must be met for the Vault Java Client libraries to work?


Thank you in advance


Leo

shannon

Re: Java Client API: dependencies and requirements?

Post by shannon » Mon Dec 01, 2008 7:53 am

What exactly is going wrong?

The only requirements are that you use Java 1.4 or better. We recommend using a Sun jre or jdk. The only known issues are with gcj versions of java.

There is native code in the jni packages, but everything else is java bytecode.

vonwyss
Posts: 14
Joined: Wed Jun 30, 2004 3:26 am

Re: Java Client API: dependencies and requirements?

Post by vonwyss » Mon Dec 01, 2008 8:08 am

In some scenarios (when running inside a Bamboo remote agent as opposed to the main local agent), the following error occurrs:

System.Reflection.TargetInvocationException: Exception of type System.Reflection.TargetInvocationException was thrown.
at system.Type.GetType(Unknown Source)
at clr.compiler.TypeInfo.createParameterInfo(Unknown Source)
at system.Web.Services.Protocols.SoapHttpClientProtocol$SoapHttpClientProtocolAttrib.createMethodData(Unknown Source)
at clr.compiler.TypeInfo.getMethods(Unknown Source)
at clr.compiler.TypeInfo.getMethodCash(Unknown Source)
at system.Reflection.Cash.MethodCash.initInheritedMethods(Unknown Source)
at system.Reflection.Cash.MethodCash.<init>(Unknown Source)
at clr.compiler.TypeInfo.getMethodCash(Unknown Source)
at system.Type.GetMethods(Unknown Source)
at system.Web.Services.Protocols.LogicalTypeInfo.<init>(TypeStubManager.cs:303)
at system.Web.Services.Protocols.TypeStubManager.__CreateClass__0x00000001(TypeStubManager.cs)
at system.Web.Services.Protocols.TypeStubManager.GetLogicalTypeInfo(TypeStubManager.cs:423)
at system.Web.Services.Protocols.TypeStubManager.GetTypeStub(TypeStubManager.cs:409)
at system.Web.Services.Protocols.SoapHttpClientProtocol.<init>(SoapHttpClientProtocol.cs:78)
at VaultClientNetLib.ClientService.VaultService.<init>(Unknown Source)
at VaultClientNetLib.VaultConnection.__CreateClass__0x00000005(Unknown Source)
at VaultClientNetLib.VaultConnection.InitService(Unknown Source)
at VaultClientOperationsLib.ClientInstance.Init(Unknown Source)
at VaultClientIntegrationLib.ServerOperations.Login(ServerOperations.cs:2493)
at VaultClientIntegrationLib.ServerOperations.Login(ServerOperations.cs:2644)
at ch.vonwyss.bamboo.vaultscm.VaultRepository.retrieveSourceCode(VaultRepository.java:132)
at com.atlassian.bamboo.v2.build.task.CheckoutUpdateForBuild.call(CheckoutUpdateForBuild.java:94)
at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:192)
at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:89)
at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:105)
at com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$1.run(NamedThreadFactory.java:32)
at edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1.run(ThreadHelpers.java:34)
at java.lang.Thread.run(Thread.java:619)

at system.Type.GetType(Unknown Source)
at clr.compiler.TypeInfo.createParameterInfo(Unknown Source)
at system.Web.Services.Protocols.SoapHttpClientProtocol$SoapHttpClientProtocolAttrib.createMethodData(Unknown Source)
at clr.compiler.TypeInfo.getMethods(Unknown Source)
at clr.compiler.TypeInfo.getMethodCash(Unknown Source)
at system.Reflection.Cash.MethodCash.initInheritedMethods(Unknown Source)
at system.Reflection.Cash.MethodCash.<init>(Unknown Source)
at clr.compiler.TypeInfo.getMethodCash(Unknown Source)
at system.Type.GetMethods(Unknown Source)
at system.Web.Services.Protocols.LogicalTypeInfo.<init>(TypeStubManager.cs:303)
at system.Web.Services.Protocols.TypeStubManager.__CreateClass__0x00000001(TypeStubManager.cs)
at system.Web.Services.Protocols.TypeStubManager.GetLogicalTypeInfo(TypeStubManager.cs:423)
at system.Web.Services.Protocols.TypeStubManager.GetTypeStub(TypeStubManager.cs:409)
at system.Web.Services.Protocols.SoapHttpClientProtocol.<init>(SoapHttpClientProtocol.cs:78)
at VaultClientNetLib.ClientService.VaultService.<init>(Unknown Source)
at VaultClientNetLib.VaultConnection.__CreateClass__0x00000005(Unknown Source)
at VaultClientNetLib.VaultConnection.InitService(Unknown Source)
at VaultClientOperationsLib.ClientInstance.Init(Unknown Source)
at VaultClientIntegrationLib.ServerOperations.Login(ServerOperations.cs:2493)
at VaultClientIntegrationLib.ServerOperations.Login(ServerOperations.cs:2644)
at ch.vonwyss.bamboo.vaultscm.VaultRepository.retrieveSourceCode(VaultRepository.java:132)
at com.atlassian.bamboo.v2.build.task.CheckoutUpdateForBuild.call(CheckoutUpdateForBuild.java:94)
at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent.build(DefaultBuildAgent.java:192)
at com.atlassian.bamboo.v2.build.agent.BuildAgentControllerImpl.waitAndPerformBuild(BuildAgentControllerImpl.java:89)
at com.atlassian.bamboo.v2.build.agent.DefaultBuildAgent$1.run(DefaultBuildAgent.java:105)
at com.atlassian.bamboo.build.pipeline.concurrent.NamedThreadFactory$1.run(NamedThreadFactory.java:32)
at edu.emory.mathcs.backport.java.util.concurrent.helpers.ThreadHelpers$1.run(ThreadHelpers.java:34)
at java.lang.Thread.run(Thread.java:619)

Unfortunately, I have been unable to get more information.

shannon

Re: Java Client API: dependencies and requirements?

Post by shannon » Mon Dec 01, 2008 8:29 am

What version of the api are you using? What version of java?

Does this happen everytime with the remote setup or just sporadically?

Can you give me more details on remote vs local in this instance?

vonwyss
Posts: 14
Joined: Wed Jun 30, 2004 3:26 am

Re: Java Client API: dependencies and requirements?

Post by vonwyss » Tue Dec 02, 2008 5:57 am

I am using the 4.1.3 version of the API and Java 1.6_10 (tried both 32bit and 64bit JVMs).

It happens everytime in the "remote" configuration, even when this is actually the same machine and user account.


local vs. remote: The Atlassian product Bamboo (a build automation software, see http://www.atlassian.com/software/bamboo/) can run builds inside the main server process ("local") or in a different process, possibly on a different machine ("remote").

While the main server process runs inside a full-blown Java web application server (Jetty by default), the remote agent is just a JAR that is executed on the command line. This seems to somehow make a difference...

If you are interested in reproducing this, you'd probably need to install a copy of Bamboo (takes 5 minutes); I'd be happy to supply the source code of my plugin.


Regards,

Leo

jon.betzold
Posts: 5
Joined: Tue Oct 13, 2009 3:28 pm

Re: Java Client API: dependencies and requirements?

Post by jon.betzold » Tue May 29, 2012 8:33 pm

Has anyone been successful at integrating Vault with Atlassian Bamboo?

Post Reply