2014-10-08 2 views
0

Java에서 Sharepoint에 대한 연결이 작동하며 아래와 같이 데이터 열의 내부 이름을 명시 적으로 지정할 때 List에서 데이터를 검색 할 수 있습니다. ArrayList listHash = new ArrayList(); String viewName = ""; GetListItems.ViewFields viewFields = null; GetListItems.Query msQuery = null; GetListItems.QueryOptions queryOptions = null; String webID = ""; 문자열 rowLimit = "";SharePoint 목록 열 머리글 목록을 반환하십시오.

GetListItemsResponse.GetListItemsResult result = listsoap.getListItems(listName, "", msQuery, viewFields, "150", queryOptions, webID); 
Object listResult = result.getContent().get(0); 

Element element = (Element)result.getContent().get(0); 
NodeList nl = element.getElementsByTagName("z:row"); 
System.out.println("\n=> " + nl.getLength() + " results from SharePoint Online\n"); 
for(Integer i = 0; i < nl.getLength(); i++) { 

    NamedNodeMap attributes = nl.item(i).getAttributes(); 

    //Add each field item to the arraylist 
    String columnName1 = "ows_ClientName"; 
    String columnName2 = "ows_Address"; 
    System.out.println(attributes.getNamedItem(columnName1).getNodeValue()); 
    System.out.println(attributes.getNamedItem(columnName2).getNodeValue()); 
} 

하지만 내가 더 일반적으로 읽을 수 있도록 SharePoint 목록에서 자동으로 그 열 이름을 검색하고 특히 내가 읽은 전에 목록에서 컬럼의 내부 이름이 무엇인지 알 필요가 없습니다 싶습니다 그들. 이것이 성취 될 수 있습니까?

도움을 주시면 감사하겠습니다.

감사합니다.

답변

0

SharePoint 웹 서비스를 사용하고 있다고 가정합니다. 이 경우 메서드 GetList를 호출하고 listname을 해당 메서드의 매개 변수로 전달할 수 있습니다. 웹 서비스의 결과는 목록의 내부 이름을 포함하여 목록의 세부 정보가 포함 된 목록의 스키마가됩니다. 이것이 작동하는지 알려주세요.

+0

크기()가 1이므로 GetList와 getContent()를 사용하여 나에게 무언가를 줄 수는 있지만 거기에서 열/내부 이름을 가져올 수있는 항목이없는 것 같습니다. toString을 사용하면 null로 표시됩니다. 이것이 제가 사용했던 것입니다. System.out.println (listsoap.getList (listName) .getContent(). size()); System.out.println (listsoap.getList (listName) .getContent(). toString()); – MisterIbbs

+0

추신 : 원래 게시물에 코드를 추가하여 현재 데이터를 가져올 수있는 방법을 정확히 보여줍니다 (코드의 열 이름을 지정하고 List 자체에서 검색하지 않음) – MisterIbbs

관련 문제