Changeset 7911 for RevitalizationWS


Ignore:
Timestamp:
25/03/11 13:18:43 (8 years ago)
Author:
mnagni
Message:

The CSWHarvester now report also ExceptionMessages? from the CSW server

File:
1 edited

Legend:

Unmodified
Added
Removed
  • RevitalizationWS/ws/DPWS/trunk/src/main/java/ndg/services/revitalization/harvest/csw/CSWHarvester.java

    r7909 r7911  
    7070 
    7171        private GetRecordsType recordsRequest; 
     72         
     73        //private ExceptionType exceptionReport; 
    7274 
    7375        public CSWHarvester(CSWHarvestRequest request, HiProcess hiProcess) { 
     
    124126                                logger.debug("POST response: " + new String(ba));  
    125127                                is = new ByteArrayInputStream(ba); 
    126                         }                                                
     128                        }        
    127129                        return getResponseType(is); 
    128130                         
     
    141143                GetRecordsResponseType response = null; 
    142144                try { 
    143                         response = CSWHarvester.manager.unmarshall(is, GetRecordsResponseType.class); 
     145                        byte[] byteResponse = IOUtils.toByteArray(is); 
     146                        response = CSWHarvester.manager.unmarshall(new ByteArrayInputStream(byteResponse), GetRecordsResponseType.class); 
     147                        if (response.getSearchResults() == null) { 
     148                                throw new NdgExecutionException(new NdgMessage("execution.error", new Object[] { "doHarvest", new String(byteResponse) }, null));                       } 
    144149                } catch (JAXBException e) { 
    145150                        if (e.getLinkedException() != null) 
     
    147152                } catch (ResourceNotAvailable e) { 
    148153                        throw new NdgExecutionException(e.getMessage(), e); 
     154                } catch (IOException e) { 
     155                        throw new NdgExecutionException(e.getMessage(), e); 
    149156                } 
    150157                return response; 
    151158        } 
    152159 
     160        /* 
     161        private String getExceptionType(InputStream is) throws NdgExecutionException { 
     162                ByteArrayOutputStream bo = new ByteArrayOutputStream(); 
     163                try { 
     164                        CSWHarvester.manager.marshall(exceptionReport, bo); 
     165                } catch (JAXBException e) { 
     166                        if (e.getLinkedException() != null) 
     167                                throw new NdgExecutionException(e.getLinkedException().getMessage(), e); 
     168                } catch (ResourceNotAvailable e) { 
     169                        throw new NdgExecutionException(e.getMessage(), e); 
     170                } 
     171                return bo.toString(); 
     172        } 
     173        */ 
     174         
    153175        private void doGetRecordsType() { 
    154176                ObjectFactory of = new ObjectFactory(); 
Note: See TracChangeset for help on using the changeset viewer.