Additional Information
Description
-----------------
The Add-ContentItems webject adds content to Windchill business objects that are content holders. For example, this webject adds content to objects that have the wt.doc.WTDocument type or the wt.part.WTPart type. Use this webject in a federated Windchill solution where the federated client application provides the content data in an Info*Engine BLOB stream.
Example:
--------------------
AddContentInputForm.jsp:
-------------------------
<%@page language="java" session="true" errorPage="IEError.jsp"%>
<%@taglib uri="http://www.ptc.com/infoengine/taglib/core" prefix="ie"%>
<%@ page import="wt.fc.*,wt.util.*,
java.lang.reflect.Array.*,
java.lang.System.*,
java.io.DataInputStream.*,
java.io.DataOutputStream.*,
java.io.FileInputStream.*,
java.io.FileOutputStream.*,
java.io.BufferedInputStream.*,
java.io.File.*,
java.io.IOException.*,
com.infoengine.object.factory.*,
com.infoengine.object.*"%>
Upload Content Item
<%
String file = request.getParameter("file");
String attribute = request.getParameter("objRef");
String name = request.getParameter("name");
String wcAdapter = wt.util.WTProperties.getLocalProperties().getProperty("wt.federation.ie.VMName");
String authorization = request.getParameter("Authorization");
%>
..................
java.io.InputStream fis = null;
java.io.BufferedInputStream bis = null;
try{
fis = new java.io.FileInputStream(file);
bis = new java.io.BufferedInputStream(fis);
}
catch (Exception e)
{
System.out.println("Error: "+e.getLocalizedMessage());
}
com.infoengine.object.IeMultipartInputStream isms = new com.infoengine.object.IeMultipartInputStream(bis,"multipart/form-data","fileName",file);
com.infoengine.SAK.Task iTask = new com.infoengine.SAK.Task();
iTask.setTaskURI("infoengine/examples/content/AddContent.xml");
iTask.addProcessor(wcAdapter);
iTask.addGroup(ieObj.getGroup("formData"));
iTask.addParam("blob_count","0");
iTask.addParam("instance",wcAdapter);
iTask.addParam("oid",objRef);
iTask.addParam("name",objName);
iTask.addParam("authorization",request.getHeader ("Authorization"));
System.out.println("isms="+bis);
iTask.setInputStream(isms);
iTask.invoke();
%>
Add-ContentItems Example
Added content <%=file%> to wt.doc.WTDocument named <%=objName%>
AddContent.xml:
----------------
<%@page language="java" session="false"%>
<%
String instance = (String)getParam("instance");
String authorization= (String)getParam("authorization");
String oid= (String)getParam("oid");
String name= (String)getParam("name");
%>
<%@taglib uri="http://www.ptc.com/infoengine/taglib/core" prefix="ie"%>
Note: Add-ContentItems must be contained within a Transaction so it must be inside and webjects.