REST Java Client
The Rest Service API of the Heiler Product Manager can be from every client technology which is able to handle HTTP requests. However, we expect that a lot of clients will be built based on some Java technology, and therefore we provide also a Java client for the Rest Service API. The Java client is part of the PIM 7 distribution. Rest Client Java sources are also available. Therefor also Javadoc can be viewed or created.
Example
Below you can find a short example on how to use the client. The RestClientExample class is also part of the rest client API package.
Usage example for the client API
/**
* Three arguments needed in the following order
* <p>
* - Basic Url, e.g.: "http://pim.heiler.com/rest"<br/>
* - Username, e.g.: MyUserName <br/>
* - Password, e.g.: MyPassword <br/>
* </p>
* <code> RestClientExample.main http://pim.heiler.com/rest MyUserName MyPassword </code>
*/
public
static
void
main( String[] args )
{
String basicUrl = extractBasicUrl( args );
String userName = extractUserName( args );
String password = extractPassword( args );
try
{
//Create and login to the client...
RestClient restClient =
new
RestClient();
restClient.loginWithBasicAuth( basicUrl, userName, password, Locale.ENGLISH );
//Create and parameterize the report query you want to execute...
EntityItemReference masterCatalog = EntityItemReferenceFactory.createByIdentifier(
"MASTER"
);
//$NON-NLS-1$
ReportQuery reportQuery =
new
ReportQuery(
"byCatalog"
).addParameterValue(
"catalog"
, masterCatalog );
//$NON-NLS-1$ //$NON-NLS-2$
//Create and parameterize the list request
ListReadRequest listReadRequest = restClient.createListReadRequest();
EntityItemTable resultTable = listReadRequest.setFields(
"Article.SupplierAID"
)
//$NON-NLS-1$
.setPageSize(
100
)
.setStartIndex(
0
)
.getRootItems(
"Article"
, reportQuery );
//$NON-NLS-1$
for
( EntityItemTableRow row : resultTable )
{
List< Object > values = row.getValues();
String currentSupplierAid = ( String ) values.get(
0
);
System.out.println( currentSupplierAid );
}
}
catch
( RestClientException e )
{
e.printStackTrace();
}
}