Changeset 1310 for MDService2/trunk/MDService2/src/eu/clarin/cmdi
- Timestamp:
- 05/16/11 10:42:30 (13 years ago)
- Location:
- MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/VirtualCollectionProxyAction.java
r1275 r1310 4 4 import java.io.BufferedReader; 5 5 import java.io.ByteArrayInputStream; 6 import java.io.ByteArrayOutputStream; 7 import java.io.File; 6 8 import java.io.FileInputStream; 7 9 import java.io.IOException; 8 10 import java.io.InputStream; 9 11 import java.io.InputStreamReader; 12 import java.io.OutputStream; 10 13 import java.io.OutputStreamWriter; 14 import java.net.HttpURLConnection; 11 15 import java.net.MalformedURLException; 12 16 import java.net.URL; … … 16 20 import java.util.Date; 17 21 import java.util.HashMap; 22 23 import org.w3c.dom.NodeList; 18 24 19 25 import net.sf.json.JSONObject; … … 71 77 } 72 78 if (getQid() != null){ 73 hm.put("queryid", get FullFormat());79 hm.put("queryid", getQid()); 74 80 } 75 81 … … 78 84 } 79 85 public String publish() throws Exception { 80 // find the filename81 //WorkspaceAction wadmin = new WorkspaceAction();82 //wadmin.setType(WorkspaceAction.ADMIN);83 //String workspace_filename = "";84 86 85 // find the querydata 86 //WorkspaceAction wa = new WorkspaceAction(); 87 //wa.setType(WorkspaceAction.FILENAME); 88 //wa.setWorkspace_filename(workspace_filename); 89 InputStream is = new BufferedInputStream( new FileInputStream(getPath())); 87 // find the workspace data 88 NodeList list = (NodeList) getWorkspace(); 89 InputStream is = this.DocumentToStream(list.item(0)); 90 90 //xslt transform to request data 91 91 MDTransformer transformer = new MDTransformer(); 92 92 transformer.setSrcFile(getTargetRequest()); 93 93 transformer.setParams(createTransformerParams()); 94 InputStream re sultStream = transformer.transformXML(is);94 InputStream requestStream = transformer.transformXML(is); 95 95 96 //post to wcr 97 // Send the request 98 URL url = new URL("http://clarin.ids-mannheim.de/vcr"); 99 URLConnection conn = url.openConnection(); 96 java.io.Writer writer = new java.io.StringWriter(); 97 char[] buffer = new char[1024]; 98 99 java.io.Reader reader = new BufferedReader( 100 new InputStreamReader(requestStream, "UTF-8")); 101 int n; 102 while ((n = reader.read(buffer)) != -1) { 103 writer.write(buffer, 0, n); 104 } 105 106 //create connection and post request data 107 108 URL url = new URL("http://clarin.ids-mannheim.de/vcr/service/virtualcollection"); 109 String charset = "UTF-8"; 110 URLConnection urlconn = url.openConnection(); 111 HttpURLConnection conn = (HttpURLConnection) urlconn; 112 conn.setDoOutput(true); 113 conn.setDoInput(true); 114 conn.setRequestMethod("POST"); 100 115 String encoding = new sun.misc.BASE64Encoder().encode("test1@ids-mannheim.de:test1234".getBytes()); 101 conn.setRequestProperty ("Authorization", "Basic " + encoding); 102 System.setProperty("http.agent", ""); 103 conn.setDoOutput(true); 104 OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream()); 116 conn.setRequestProperty("Authorization", "Basic " + encoding); 117 conn.setRequestProperty("Content-Type", "text/xml;charset=" + charset);//; charset=utf-8"); 118 conn.setRequestProperty("Accept-Charset", charset); 119 //System.setProperty("http.keepAlive", "false"); 120 //conn.setRequestMethod("GET"); 121 //conn("Expect", "100-continue"); 122 //System.setProperty("http.agent", ""); 105 123 106 //write parameters 107 writer.write(resultStream.toString()); 108 writer.flush(); 124 OutputStreamWriter out = new OutputStreamWriter( 125 conn.getOutputStream()); 126 out.write(writer.toString()); 127 out.flush(); 128 out.close(); 129 130 InputStream responseStream; 131 132 Integer respCode = conn.getResponseCode(); 133 if (respCode == 200 || respCode == 201) { 134 responseStream = conn.getInputStream(); 135 //conn.getContent(); 136 } else { 137 responseStream = conn.getErrorStream(); 138 } 139 140 setResultStream(responseStream); 109 141 110 // Get the response111 //StringBuffer answer = new StringBuffer();112 //BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));113 //String line;114 //while ((line = reader.readLine()) != null) {115 // answer.append(line);116 //}117 writer.close();118 //reader.close();119 120 //answer.toString();121 122 142 return SUCCESS; 123 143 } -
MDService2/trunk/MDService2/src/eu/clarin/cmdi/mdservice/action/WorkspaceAction.java
r1273 r1310 111 111 112 112 private static WorkspaceAction singleton; 113 private String workspacefile; 113 private static String workspacefilename; 114 private static Document workspace_doc; 115 114 116 //private String workspaceindex_path; 115 117 //private static Integer querycounter; 116 118 private static final Integer start_query = 1; 117 119 118 private static Document workspace_doc;120 119 121 120 122 //private HttpServletRequest request; … … 152 154 } 153 155 154 155 156 156 public WorkspaceAction () { 157 workspacefile = Admin.getConfig().getProperty("workspace.path") + Admin.getConfig().getProperty("workspace.file");158 //querycounter =159 if (singleton == null){157 workspacefilename = Admin.getConfig().getProperty("workspaceprofile.path") + Admin.getConfig().getProperty("workspace.file"); 158 if (workspace_doc == null){ 159 //workspacefilename = Admin.getConfig().getProperty("workspace.path") + Admin.getConfig().getProperty("workspace.file"); 160 160 initDocument(); 161 singleton = this; 162 } 163 164 161 } 165 162 } 166 163 … … 638 635 expr = xpath.compile(getWorkspaceXPathExpression()); 639 636 //expression is evaluated with respect to a certain context node which is doc. 640 Object result = expr.evaluate(workspace_doc, XPathConstants.NODESET); 637 Object result = null; 638 try{ 639 result = expr.evaluate(workspace_doc, XPathConstants.NODESET); 640 } catch(Exception e){ 641 642 } 643 641 644 return result; 642 645 } … … 672 675 } 673 676 677 678 674 679 public void initDocument() { 675 676 Integer counter = start_query;677 boolean init=false;678 679 File f = new File (fname);680 681 680 681 boolean init=false; 682 Integer counter = start_query; 683 //String fname = getPath();//workspacefile; 684 File f = new File (workspacefilename); 685 686 if (!f.exists()) { 682 687 // create new counter document 683 688 DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance(); … … 693 698 root.appendChild(e); 694 699 e = workspace_doc.createElement("maxqid"); 695 e.setNodeValue(counter.toString());//setAttribute("id", c.toString()); 700 e.setNodeValue(counter.toString()); 701 e = workspace_doc.createElement("WorkspaceProfiles"); 702 root.appendChild(e); 703 696 704 //updateQuerycounter(); 697 705 this.saveDocument(); … … 711 719 docBuilder = docFactory.newDocumentBuilder(); 712 720 try { 713 workspace_doc = docBuilder.parse( fname);721 workspace_doc = docBuilder.parse(workspacefilename); 714 722 } catch (SAXException e) { 715 723 // TODO Auto-generated catch block … … 764 772 String xmlString = result.getWriter().toString(); 765 773 766 File f = new File ( getPath());//workspacefile);774 File f = new File (workspacefilename); 767 775 FileWriter fw; 768 776 try {
Note: See TracChangeset
for help on using the changeset viewer.