Project Server communicates with PSI clients using ADO.NET Datasets. The structure isn't standard for Java and I don't know any good implementation of the Datasets in Java. Check this question.
I agree with propose solution for that question: create proxy web service which will translate your objects serialized in Java to the .NET datasets.
The overall workflow looks like this:
CheckOutProject
QueueAddToProject (adds tasks, resources, assignments)
- QueueDeleteFromProject (drops tasks, resources, assignments)
QueueUpdateProject (updates tasks, resources, assignments, adds/drops/updates enterprise custom fields), Does not access > 1000 records per call
QueuePublishProject (optional)
QueueCheckInProject
All documentation is here: http://msdn.microsoft.com/en-us/library/office/websvcproject.project_di_pj14mref_methods.aspx