REST service examples

See examples of different service requests that work with composite applications resources.


Get favorites

try {
	HttpClient client = new HttpClient();
	client.getState().setCredentials(
		new AuthScope(HOSTNAME, PORT,AuthScope.ANY_REALM),
		new UsernamePasswordCredentials(USERNAME, PASSWORD));
	HttpClientParams params = new HttpClientParams();
	params.setParameter(HttpClientParams.ALLOW_CIRCULAR_REDIRECTS, Boolean.TRUE);
	client.setParams(params);
	//application favorites entry point - context 'wps' may be different on system
	HttpMethod httpMethod = new GetMethod("http://" + HOSTNAME + ":" + PORT + "/wps/mycontenthandler/ai/application-favorites");
	httpMethod.setDoAuthentication(true);
	client.executeMethod(httpMethod);
		    	
	System.out.println("Status code: " + httpMethod.getStatusCode());
	Header contentTypeHeader = httpMethod.getResponseHeader("content-type");
	System.out.println("Mimetype: " + contentTypeHeader.getValue());
	System.out.println("Response: " + httpMethod.getResponseBodyAsString());
	httpMethod.releaseConnection();    	
} catch (org.apache.commons.httpclient.HttpException he){
	he.printStackTrace();
} catch (IOException ioe){
	ioe.printStackTrace();
} 


Get template by filtering template

try {
	HttpClient client = new HttpClient();
	client.getState().setCredentials(
		new AuthScope(HOSTNAME, PORT,AuthScope.ANY_REALM),
		new UsernamePasswordCredentials(USERNAME, PASSWORD));
	HttpClientParams params = new HttpClientParams();
	params.setParameter(HttpClientParams.ALLOW_CIRCULAR_REDIRECTS, Boolean.TRUE);
	client.setParams(params);
	//template entry point - context 'wps' may be different on system
	//added URL encoded filtering parameter: 'filer=title=Portal Blank Template'
	String url = "http://" + HOSTNAME + ":" + PORT + "/wps/mycontenthandler/ai/templates?filter=title%3DPortal%20Blank%20Template";
	HttpMethod httpMethod = new GetMethod(url);
	httpMethod.setDoAuthentication(true);
	client.executeMethod(httpMethod);
		    	
	System.out.println("Status code: " + httpMethod.getStatusCode());
	Header contentTypeHeader = httpMethod.getResponseHeader("content-type");
	System.out.println("Mimetype: " + contentTypeHeader.getValue());
	System.out.println("Response: " + httpMethod.getResponseBodyAsString());
	httpMethod.releaseConnection();    		
} catch (org.apache.commons.httpclient.HttpException he){
	he.printStackTrace();
} catch (IOException ioe){
	ioe.printStackTrace();
} 


Export template as compressed file

try {
	HttpClient client = new HttpClient();
	client.getState().setCredentials(
		new AuthScope(HOSTNAME, PORT,AuthScope.ANY_REALM),
		new UsernamePasswordCredentials(USERNAME, PASSWORD));
	HttpClientParams params = new HttpClientParams();
	params.setParameter(HttpClientParams.ALLOW_CIRCULAR_REDIRECTS, Boolean.TRUE);
	client.setParams(params);
	//export URL retrieved from application's feed - do not rely on the URL syntax in this example, yours may be different, retrieve it yourself
	String url = "http://" + HOSTNAME + ":" + PORT + "/wps/mycontenthandler/!ut/p/ai/applications/1F_AESU3F540GQL00IOCR30NG08T7?mime-type=application%2fzip";
	HttpMethod httpMethod = new GetMethod(url);
	httpMethod.setDoAuthentication(true);
	client.executeMethod(httpMethod);
		    	
	System.out.println("Status code: " + httpMethod.getStatusCode());
	Header contentTypeHeader = httpMethod.getResponseHeader("content-type");
	System.out.println("Mimetype: " + contentTypeHeader.getValue());
	            
	File file = new File("exportedTemplate.zip");
	FileOutputStream out = new FileOutputStream(file, false);
	InputStream in = httpMethod.getResponseBodyAsStream();
	int character;
	while ((character=in.read()) != -1) {
		out.write((char)character);
	}
	in.close();
	out.close();
	httpMethod.releaseConnection();    	
} catch (org.apache.commons.httpclient.HttpException he){
	he.printStackTrace();
} catch (IOException ioe){
	ioe.printStackTrace();
}


Create template by uploading compressed file

try {
	HttpClient client = new HttpClient();
	client.getState().setCredentials(
		new AuthScope(HOSTNAME, PORT,AuthScope.ANY_REALM),
		new UsernamePasswordCredentials(USERNAME, PASSWORD));
	HttpClientParams params = new HttpClientParams();
	params.setParameter(HttpClientParams.ALLOW_CIRCULAR_REDIRECTS, Boolean.TRUE);
	client.setParams(params);
	//template entry point - context 'wps' may be different on system
	PostMethod postMethod = new PostMethod("http://" + HOSTNAME + ":" + PORT + "/wps/mycontenthandler/ai/templates");
	postMethod.setDoAuthentication(true);
	Header mtHeader = new Header();
	mtHeader.setName("content-type");
	mtHeader.setValue("application/zip");
	postMethod.addRequestHeader(mtHeader);
		    	
	//inside this compressed file there is the template like you get when exporting one
	String path = "/doc/createTemplate-RequestBody.zip";
	File file = new File(java.net.URI.create(CodeExamples.class.getResource(path).toString()));
	long length = file.length();
	byte [] bytes = new byte [(int)length];
	int offset = 0;
	int numRead = 0;
	InputStream is = DocumentationUtil.class.getResourceAsStream(path);
	while (offset < bytes.length && (numRead=is.read(bytes, offset, bytes.length-offset)) >= 0) {
		offset += numRead;
	}
	is.close();
		    	
	RequestEntity re = new ByteArrayRequestEntity(bytes, "application/zip");
	postMethod.setRequestEntity(re);
	postMethod.setDoAuthentication(true);
	client.executeMethod(postMethod);
		    	
	System.out.println("Status code: " + postMethod.getStatusCode());
	Header contentTypeHeader = postMethod.getResponseHeader("content-type");
	System.out.println("Mimetype: " + contentTypeHeader.getValue());
	System.out.println("Response: " + postMethod.getResponseBodyAsString());
	postMethod.releaseConnection();    	  	
} catch (org.apache.commons.httpclient.HttpException he){
	he.printStackTrace();
} catch (IOException ioe){
	ioe.printStackTrace();
}


Create template by uploading compressed file in multipart request

try {
	HttpClient client = new HttpClient();
	client.getState().setCredentials(
		new AuthScope(HOSTNAME, PORT,AuthScope.ANY_REALM),
		new UsernamePasswordCredentials(USERNAME, PASSWORD));
	HttpClientParams params = new HttpClientParams();
	params.setParameter(HttpClientParams.ALLOW_CIRCULAR_REDIRECTS, Boolean.TRUE);
	client.setParams(params);
	//template entry point - context 'wps' may be different on system
	PostMethod postMethod = new PostMethod("http://" + HOSTNAME + ":" + PORT + "/wps/mycontenthandler/ai/templates");
	postMethod.setDoAuthentication(true);
	//do not set mimetype header as this will be done automatically and a separation string is inserted into it
		    	
	//inside this compressed file there is the template like you get when exporting one
	String path = "/doc/createTemplate-RequestBody.zip";
	File file = new File(java.net.URI.create(CodeExamples.class.getResource(path).toString()));
	long length = file.length();
	byte [] bytes = new byte [(int)length];
	int offset = 0;
	int numRead = 0;
	InputStream is = CodeExamples.class.getResourceAsStream(path);
	while (offset < bytes.length && (numRead=is.read(bytes, offset, bytes.length-offset)) >= 0) {
		offset += numRead;
	}
	is.close();
 
	Part [] parts = new Part [1];
	FilePart part = new FilePart("inputFile", new ByteArrayPartSource("inputFile", bytes));
	parts [0] = part;
	RequestEntity re = new MultipartRequestEntity(parts, postMethod.getParams());
 
	postMethod.setRequestEntity(re);
	postMethod.setDoAuthentication(true);
	client.executeMethod(postMethod);
 
	System.out.println("Status code: " + postMethod.getStatusCode());
	Header contentTypeHeader = postMethod.getResponseHeader("content-type");
	System.out.println("Mimetype: " + contentTypeHeader.getValue());
	System.out.println("Response: " + postMethod.getResponseBodyAsString());
	postMethod.releaseConnection();    	  	
} catch (org.apache.commons.httpclient.HttpException he){
	he.printStackTrace();
} catch (IOException ioe){
	ioe.printStackTrace();
}


Parent

Composite Applications REST services

  Changed ZIP and zip to compressed (excluding .zip). Reflected in .dita...


+

Search Tips   |   Advanced Search