Welcome to the Jazz Community Forum
ERROR: JDWP Unable to get JNI 1.2 environment. Caused by ITeamBuildClient.queryItems ?

This is a common bug across Java in general, apparently. There are many workarounds, none of which have worked for me - which makes me think it's a problem with the Plain Java Client Library itself.
I basically followed the tutorial on https://jazz.net/library/article/1229.
Using IntelliJ 14.1.4, RTC Server 5.0.2 (Both the client jars and server, I checked)
Throws an error on
Some string literals changed for safety.
I basically followed the tutorial on https://jazz.net/library/article/1229.
Using IntelliJ 14.1.4, RTC Server 5.0.2 (Both the client jars and server, I checked)
Throws an error on
IItemQueryPage queryPage = buildClient.queryItems(query, new Object[] { definition.getItemId() }, IQueryService.ITEM_QUERY_MAX_PAGE_SIZE, myProgressMonitor);The problem occurs with OR without debugging.
Some string literals changed for safety.
public class Main { static final String USER = "ABCD";}
static IProgressMonitor myProgressMonitor;
static final String SITE = "https://contonso.com/jazz";
static final String pass = "1234";
public static void main(String[] args) {
org.apache.log4j.BasicConfigurator.configure();
TeamPlatform.startup();
try {
ITeamRepository repo = Login(pass);
if (repo == null) throw new Exception("Could not login");
ITeamBuildClient buildClient = (ITeamBuildClient)repo.getClientLibrary(ITeamBuildClient.class);
IBuildDefinition definition = buildClient.getBuildDefinition("my.build.id", myProgressMonitor);
getWIs(buildClient, definition);
} catch(Exception ex) {System.err.println(ex.getMessage());} finally {
TeamPlatform.shutdown();
}
System.exit(0);
}
public static ITeamRepository Login(final String pass) {
ITeamRepository repo = TeamPlatform.getTeamRepositoryService().getTeamRepository(SITE);
repo.registerLoginHandler(new ILoginHandler2() {
@Override
public ILoginInfo2 challenge(ITeamRepository repo) {
return new UsernameAndPasswordLoginInfo(USER, pass);
}
});
try {
repo.login(myProgressMonitor);
return repo;
} catch (TeamRepositoryException e) {
e.printStackTrace();
return null;
}
}
public static void getWIs(ITeamBuildClient buildClient, IBuildDefinition definition) throws TeamRepositoryException {
IBaseBuildResultQueryModel.IBuildResultQueryModel buildResultQueryModel = IBaseBuildResultQueryModel.IBuildResultQueryModel.ROOT;
IItemQuery query = IItemQuery.FACTORY.newInstance(buildResultQueryModel);
IPredicate predicate = (buildResultQueryModel.buildDefinition()._eq(query.newItemHandleArg()))._and(
buildResultQueryModel.personalBuild()._isFalse())._and(
buildResultQueryModel.buildState()._eq(BuildState.COMPLETED.name()));
query.filter(predicate);
query.orderByDsc(buildResultQueryModel.buildStartTime());
IItemQueryPage queryPage = buildClient.queryItems(query, new Object[] { definition.getItemId() },
IQueryService.ITEM_QUERY_MAX_PAGE_SIZE, myProgressMonitor);
while (queryPage.hasNext()) {
queryPage = (IItemQueryPage) buildClient.fetchPage(queryPage.getToken(), queryPage.getNextStartPosition(), 1, myProgressMonitor);
System.out.println(queryPage.toString());
}
}