Here’s a summary of what my program does. I developed a java application that downloads pdf documents off the internet and then utilizes the IFS File Transfer Service to upload them to the application server. Once the document is uploaded to the application server, I’m using the Java Access Provider to check the document in and connect it to sales quotes. I have this app compiled and placed on a Linux server and has a cron job associated with it.
Note: The IFS application server is windows and not where this application is installed.
Here’s my issue:
In my code, I create a Server object and set the connection string of my application server, and then set the credentials. (In this case, I’m using IFSAPP). When I run the java program from my local PC, it works fine. Below is a sample of the code.
Server srv = new Server();
srv.setConnectionString("https://<host>:<port>");
srv.setCredentials("IFSAPP", "thisisafakepassword");
PlsqlSelectCommand selCmd = new PlsqlSelectCommand(srv, "SELECT COL_1, COL_2, COL_3, OBJID, OBJVERSION FROM IFSAPP.<VIEW> WHERE COL_3 = 0");
// Excute the query and get the result.
RecordCollection selCmdResult = selCmd.executeQuery();
Recently the same program that’s on the Linux server, has been getting an error at the line above in red. The error is Exception in thread "main" - You don't have enough privileges to invokethis method. Please contact your system administrator
Has anyone run into an issue like this before? I traced the error to a file called ifsClientGatewayProxy.java where the error is called. It looks like an HTTP 403 error, but I don’t understand why I would suddenly get this error on one server, but not on my local machine. The IFSAPP user has all the privileges it needs so I have to be missing something. Is there some more robust logging I could add to the code possibly?
Note: I also put this program on the IFS Application Server and it ran fine too.