As we transition to the new Hyland Community, some post links may be temporarily disrupted as we finalize redirects. We apologize for the inconvenience and are working to resolve this as quickly as possible. Details.
Hello World
–ntFc1CtoJLgJ94PK6EIn_3Dm8HX7nXBzLContent-Disposition: form-data; name="test.txt"Content-Type: text/plain; charset=US-ASCIIContent-Transfer-Encoding: 8bitHello World–ntFc1CtoJLgJ94PK6EIn_3Dm8HX7nXBzL–
public static void main(String[] args) { String fileName = args[0]; String URL = "http://localhost:8080/alfresco/upload/workspace/SpacesStore/71ee6b00-c473-4fe1-be97-40bc5d6cf80f/"; PutMethod filePost = null; HttpClient client = null; try { String ticket = getTicket(); filePost = new PutMethod(URL+fileName+"?ticket="+ticket); File mFile = new File(fileName); FilePartSource fileSource = new FilePartSource(mFile); Part[] parts = { new FilePart(fileName, fileSource) }; filePost.setRequestEntity( new MultipartRequestEntity(parts, filePost.getParams()) ); client = new HttpClient(); client.getHttpConnectionManager().getParams().setConnectionTimeout(5000); int status = client.executeMethod(filePost); if (status == HttpStatus.SC_OK) { System.out.println("Upload success"); } else { System.out.println("Upload failed: " + HttpStatus.getStatusText(status)); }
FilePartSource fileSource = new FilePartSource(mFile); Part[] parts = { new FilePart(fileName, fileSource) }; filePost.setRequestEntity( new MultipartRequestEntity(parts, filePost.getParams()) );
filePost.setRequestBody(new FileInputStream(mFile));
String fileName = "C:/temp/test.pdf"; String URL = "http://localhost:9090/alfresco/upload/workspace/SpacesStore/00c248bf-3385-4fa7-848b-a2d6a74a9759/"; PutMethod filePost = null; HttpClient client = null; try { //String ticket = getTicket(); String ticket = "TICKET_70a632f462cdb111fa9ada7d4d9213e497393672"; filePost = new PutMethod(URL + "test.pdf" +"?ticket=" + ticket); File mFile = new File(fileName); FilePartSource fileSource = new FilePartSource(mFile); Part[] parts = { new FilePart(fileName, fileSource) }; filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams())); client = new HttpClient(); client.getHttpConnectionManager().getParams().setConnectionTimeout( 5000); int status = client.executeMethod(filePost); System.out.println(filePost.getResponseBodyAsString()); if (status == HttpStatus.SC_OK) { System.out.println("Upload success"); } else { System.out.println("Upload failed: " + HttpStatus.getStatusText(status)); } } catch (Exception e) { }
private void initialize() throws UploadFault{ log.info("start call to AlfrescoUploadContent.initialize"); try { String strAlfrescoWsUrl = props.getProperty("alfresco.ws.url"); log.info("strAlfrescoWsUrl: " + strAlfrescoWsUrl); WebServiceFactory.setEndpointAddress(strAlfrescoWsUrl); repositoryServiceStub = WebServiceFactory.getRepositoryService(); String alfrescoHost = props.getProperty("alfresco.port"); int alfrescoPort = Integer.valueOf(props.getProperty("alfresco.port")); HttpParams params = new BasicHttpParams(); ConnPerRouteBean connPerRoute = new ConnPerRouteBean(20); HttpHost ahost = new HttpHost(alfrescoHost, alfrescoPort); connPerRoute.setMaxForRoute(new HttpRoute(ahost), 200); ConnManagerParams.setMaxConnectionsPerRoute(params, connPerRoute); SchemeRegistry schemeRegistry = new SchemeRegistry(); schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), alfrescoPort)); ClientConnectionManager cm = new ThreadSafeClientConnManager(params, schemeRegistry); client = new DefaultHttpClient(cm, params); responseHandler = new BasicResponseHandler(); strUtil = new StringUtil(); specialChars = props.getProperty("special.characters"); log.info("specialChars: " + specialChars); specialCharsReplacement = props.getProperty("special.characters.replacement"); log.info("specialCharsReplacement: " + specialCharsReplacement); } catch (Exception e) { log.error("initialization error: ", e); UploadFault fault = new UploadFault(); UploadFaultMsg msg = fault.getFaultInfo(); msg.setErrorMessage(e.getMessage()); throw fault; } log.info("done call to AlfrescoUploadContent.initialize"); }
private void startSession() throws UploadFault { log.info("start call to AlfrescoUploadContent.startSession"); String strUser = props.getProperty("alfresco.user"); String strPassword = props.getProperty("alfresco.password"); try { AuthenticationUtils.startSession(strUser, strPassword); String strTicket = AuthenticationUtils.getTicket(); log.info("strTicket: " + strTicket); } catch (AuthenticationFault e) { log.error("authentication error: ", e); UploadFault fault = new UploadFault(); UploadFaultMsg msg = fault.getFaultInfo(); msg.setErrorMessage(e.getMessage()); throw fault; } log.info("done call to AlfrescoUploadContent.startSession"); }
private String uploadContent(String fileUrl, String strFileName) throws UploadFault { String strTicket = AuthenticationUtils.getTicket(); StringBuffer strBuffUploadUrl = new StringBuffer("http://"); strBuffUploadUrl.append(props.getProperty("alfresco.host")); strBuffUploadUrl.append(":").append(props.getProperty("alfresco.port")); strBuffUploadUrl.append("/").append(props.getProperty("alfresco.context")); strBuffUploadUrl.append("/upload"); strBuffUploadUrl.append("/").append(strFileName); strBuffUploadUrl.append("?ticket="); strBuffUploadUrl.append(strTicket); String strUploadUrl = strBuffUploadUrl.toString(); log.info("strUploadUrl: " + strUploadUrl); HttpPut putFile = new HttpPut(strUploadUrl); URL url; InputStream is; String responseBody = null; try { url = new URL(fileUrl); is = url.openStream(); InputStreamEntity ise = new InputStreamEntity(is, -1); putFile.setEntity(ise); responseBody = client.execute(putFile, responseHandler); log.info("responseBody: " + responseBody); } catch (MalformedURLException e) { log.error("MalformedURLException!", e); throw new UploadFault(e.getMessage()); } catch (ClientProtocolException e) { log.error("ClientProtocolException!", e); throw new UploadFault(e.getMessage()); } catch (IOException e) { log.error("ClientProtocolException!", e); throw new UploadFault(e.getMessage()); } return responseBody; }
private UploadResponse uploadCMLContent(ParentReference parentRef, UploadRequest req, String strContentData) throws UploadFault { UploadResponse res = new UploadResponse(); log.info("req.getFileName(): " + req.getFileName()); String strFileName = req.getFileName(); parentRef.setChildName("cm:" + strFileName); // Create the logical content NamedValue[] properties = new NamedValue[] { Utils.createNamedValue(Constants.PROP_NAME, strFileName), Utils.createNamedValue(Constants.PROP_CONTENT, strContentData) }; CMLCreate create = new CMLCreate("1", parentRef, null, null, null, Constants.TYPE_CONTENT, properties); CML cml = new CML(); cml.setCreate(new CMLCreate[] { create }); List<FormField> formFields = req.getFormFields(); log.info("formFields.size(): " + formFields.size()); NamedValue[] aspectsCommon = new NamedValue[12]; aspectsCommon[0] = Utils.createNamedValue(DMSConstants.PROP_TRACK_NO, req.getTrackNo()); aspectsCommon[1] = Utils.createNamedValue(DMSConstants.PROP_EMAIL, req.getEmail()); aspectsCommon[2] = Utils.createNamedValue(DMSConstants.PROP_ROLE, req.getRole()); aspectsCommon[3] = Utils.createNamedValue(DMSConstants.PROP_FILENAME, req.getFileName()); aspectsCommon[4] = Utils.createNamedValue(DMSConstants.PROP_FILEURL, req.getFileUrl()); aspectsCommon[5] = Utils.createNamedValue(DMSConstants.PROP_DOCTYPE, req.getDoctype()); aspectsCommon[6] = Utils.createNamedValue(DMSConstants.PROP_DESTINATIONDIR, req.getDestinationdir()); aspectsCommon[7] = Utils.createNamedValue(DMSConstants.PROP_PROCESS, req.getProcess()); aspectsCommon[8] = Utils.createNamedValue(DMSConstants.PROP_SUBPROCESS, req.getSubProcess()); aspectsCommon[9] = Utils.createNamedValue(DMSConstants.PROP_ENTITY, req.getEntity()); aspectsCommon[10] = Utils.createNamedValue(DMSConstants.PROP_VERSION, req.getVersion()); aspectsCommon[11] = Utils.createNamedValue(DMSConstants.PROP_ALFRESCO_ENDPOINTURL, req.getAlfrescoEndpointUrl()); CMLAddAspect addAspectCommon = new CMLAddAspect(DMSConstants.ASPECT_COMMON, aspectsCommon, null, "1"); CMLAddAspect[] addAspects = new CMLAddAspect[2]; addAspects[0] = addAspectCommon; // iterate formFields and add as aspects to the new content if (formFields.size() != 0) { NamedValue[] aspects = new NamedValue[formFields.size()]; for (int aspectCtr = 0; aspectCtr != formFields.size(); aspectCtr++) { FormField ff = (FormField)formFields.get(aspectCtr); log.info("ff.getFieldValue(): " + ff.getFieldValue()); StringBuffer aspectField = new StringBuffer("metadata").append(aspectCtr+1); aspects[aspectCtr] = Utils.createNamedValue(DMSConstants.createQNameString( DMSConstants.DMS_NAMESPACE_CONTENT_MODEL, aspectField.toString()), ff.getFieldValue()); } CMLAddAspect addAspectMetadata = new CMLAddAspect(DMSConstants.ASPECT_METADATA, aspects, null, "1"); addAspects[1] = addAspectMetadata; } cml.setAddAspect(addAspects); UpdateResult[] result = null; try { result = repositoryServiceStub.update(cml); } catch (RepositoryFault e) { log.error("RepositoryFault!", e); throw new UploadFault("RepositoryFault!", e); } catch (RemoteException e) { log.error("RemoteException!", e); throw new UploadFault("RemoteException!", e); } log.info("getPath(): " + result[0].getDestination().getPath()); String strUuid = result[0].getDestination().getUuid(); log.info("getUuid(): " + strUuid); String strDestStoreAddress = result[0].getDestination().getStore().getAddress(); log.info("getAddress(): " + strDestStoreAddress); String strAfrescoUrl = props.getProperty("alfresco.url.prefix"); String dmsUrl = strAfrescoUrl + strDestStoreAddress + "/" + strUuid + "/" + req.getFileName(); res.setDmsFileUrl(dmsUrl); res.setStatus("0"); res.setMessage("Successfully uploaded file in DMS!"); return res; }