The following Java code example modifies a Watched Folder
endpoint.The endpoint is for the
MyApplication/EncryptDocument
process.
The watched folder is changed to
C:\NewWatchedFolder
.
(See Modifying
Endpoints.)
/*
* This Java Quick Start uses the following JAR files
* 1. adobe-livecycle-client.jar
* 2. adobe-usermanager-client.jar
* 3. activation.jar (required for SOAP mode)
* 4. axis.jar (required for SOAP mode)
* 5. axis.jar (required for SOAP mode)
* 6. commons-codec-1.3.jar (required for SOAP mode)
* 7. commons-collections-3.2.jar (required for SOAP mode)
* 8. commons-discovery.jar (required for SOAP mode)
* 9. commons-logging.jar (required for SOAP mode)
* 10. dom3-xml-apis-2.5.0.jar (required for SOAP mode)
* 11. jaxen-1.1-beta-9.jar (required for SOAP mode)
* 12. jaxrpc.jar (required for SOAP mode)
* 13. log4j.jar (required for SOAP mode)
* 14. mail.jar (required for SOAP mode)
* 15. saaj.jar (required for SOAP mode)
* 16. wsdl4j.jar (required for SOAP mode)
* 17. xalan.jar (required for SOAP mode)
* 18. xbean.jar (required for SOAP mode)
* 19. xercesImpl.jar (required for SOAP mode)
? * 13. activation.jar (required for SOAP mode)
? * 14. axis.jar (required for SOAP mode)
? * 15. axis.jar (required for SOAP mode)
? * 16. commons-codec-1.3.jar (required for SOAP mode)
? * 17. commons-collections-3.2.jar (required for SOAP mode)
? * 18. commons-discovery.jar (required for SOAP mode)
? * 19. commons-logging.jar (required for SOAP mode)
? * 20. dom3-xml-apis-2.5.0.jar (required for SOAP mode)
? * 21. jaxen-1.1-beta-9.jar (required for SOAP mode)
? * 22. jaxrpc.jar (required for SOAP mode)
? * 23. log4j.jar (required for SOAP mode)
? * 24. mail.jar (required for SOAP mode)
? * 25. saaj.jar (required for SOAP mode)
? * 26. wsdl4j.jar (required for SOAP mode)
? * 27. xalan.jar (required for SOAP mode)
? * 28. xbean.jar (required for SOAP mode)
? * 29. xercesImpl.jar (required for SOAP mode)
*
* The JBoss files must be kept in the jboss\client folder. You can copy the client folder to
* your local development environment and then include the 3 JBoss JAR files in your class path
*
* These JAR files are located in the following path:
* <install directory>/sdk/client-libs/common
*
*
* <install directory>/jboss/bin/client
*
* If you want to invoke a remote forms server instance and there is a
* firewall between the client application and the server, then it is
* recommended that you use the SOAP mode. When using the SOAP mode,
* you have to include additional JAR files located in the following
* path
* <install directory>/sdk/client-libs/thirdparty
*
* For information about the SOAP
* mode and the additional JAR files that need to be included,
* see "Setting connection properties" in Programming
* with AEM Forms
*
* For complete details about the location of the AEM Forms JAR files,
* see "Including LiveCycle Java library files" in Programming
* with AEM Forms
*/
import java.util.Iterator;
import java.util.List;
import java.util.Properties;
import com.adobe.idp.dsc.clientsdk.ServiceClientFactory;
import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties;
import com.adobe.idp.dsc.filter.PagingFilter;
import com.adobe.idp.dsc.registry.endpoint.ModifyEndpointInfo;
import com.adobe.idp.dsc.registry.endpoint.client.EndpointRegistryClient;
import com.adobe.idp.dsc.registry.infomodel.Endpoint;
public class ModifyEndPoint {
public static void main(String[] args) {
try{
Endpoint _endpoint = null;
//Set connection properties required to invoke AEM Forms
Properties ConnectionProps = new Properties();
ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "jnp://[server]:[port]");
ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);
ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss");
ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator");
ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password");
//Create a ServiceClientFactory object
ServiceClientFactory myFactory = ServiceClientFactory.createInstance(ConnectionProps);
//Create an EndpointRegistryClient object
EndpointRegistryClient endPointClient = new EndpointRegistryClient(myFactory);
//Retrieve all endpoints
List allEndpoints = endPointClient.getEndpoints((PagingFilter)null);
//Iterate through the returned list of endpoints
Iterator iter = allEndpoints.iterator();
int i =0;
while (iter.hasNext()) {
_endpoint = (Endpoint) iter.next();
//Look for an endpoint that belongs to the
//EncryptDocument service
String serviceID = _endpoint.getServiceId();
if (serviceID.matches("MyApplication/EncryptDocument"))
{
//Get the WatchedFolder endpoint
String connId = _endpoint.getConnectorId();
if (connId.matches("WatchedFolder"))
{
//Create a ModifyEndpointInfo object
ModifyEndpointInfo endpointInfo =new ModifyEndpointInfo();
//Modify configuration values
endpointInfo.setId(_endpoint.getId());
endpointInfo.setConfigParameterAsText("url", "C:\\NewWatchedFolder");
endpointInfo.setConfigParameterAsText("asynchronous","true");
endpointInfo.setConfigParameterAsText("repeatInterval","5");
endpointInfo.setConfigParameterAsText("repeatCount","-1");
endpointInfo.setConfigParameterAsText("throttleOn","false");
endpointInfo.setConfigParameterAsText("userName","SuperAdmin");
endpointInfo.setConfigParameterAsText("domainName","DefaultDom");
endpointInfo.setConfigParameterAsText("batchSize","2");
endpointInfo.setConfigParameterAsText("waitTime","0");
endpointInfo.setConfigParameterAsText("excludeFilePattern",".txt");
endpointInfo.setConfigParameterAsText("includeFilePattern","*");
endpointInfo.setConfigParameterAsText("resultFolderName","result/%Y/%M/%D/");
endpointInfo.setConfigParameterAsText("preserveFolderName","preserve/%Y/%M/%D/");
endpointInfo.setConfigParameterAsText("failureFolderName","failure/%Y/%M/%D/");
endpointInfo.setConfigParameterAsText("preserveOnFailure","true");
endpointInfo.setConfigParameterAsText("overwriteDuplicateFilename","false");
//Define input parameter values
endpointInfo.setInputParameterMapping("inDoc",
"com.adobe.idp.Document",
"variable",
"*.pdf");
//Define the output parameter values
endpointInfo.setOutputParameterMapping("outDoc",
"com.adobe.idp.Document",
"%F.pdf");
//Modify the endpoint for this service
endPointClient.modifyEndpoint(endpointInfo);
System.out.println("The EJB endpoint for the EncryptDocument service was modified");
}
i++;
}
}
}catch (Exception e) {
e.printStackTrace();
}
}
}