获取http:// localhost [...](未找到)

时间:2016-06-28 14:48:31

标签: angularjs rest http-get resttemplate

我正在尝试添加对特定服务的调用,但此消息不断弹出 我尝试直接从js使用一个简单的http.get()调用,但它显然最终出现了“同源策略”问题。
所以我决定使用RestTemplate,但错误仍然存​​在...

这是js代码的一部分:

$scope.cercaClienteNomeCognome = function() {
    if (angular.uppercase($scope.nome) == undefined){
        var name = "";
    } else name = $scope.nome;
    if (angular.uppercase($scope.cognome) == undefined){
        var surname = "";
    } else surname = $scope.cognome;
    // OLD URL: ConfigPropertiesService.configProperties.urlricercaClienteNomeCognome+"cognome=%25"+surname+"%25&nome=%25"+name+"%25" 
    var url = ConfigPropertiesService.configProperties.completeURLItasServiziDocumentale + "servizi/getClienteNomeCognome?nomeCliente="+name+"&cognomeCliente="+surname;
    $http.get(url)
    .success(function(data, status, headers, config) {
        if (data.length > 0) {
            var modalInstance = $modal.open({
                templateUrl: 'partials/modals/tipiDocumentoExtra.html',
                controller: 'TreeController',
                size : 'lg',
                backdrop: 'static',
                //keyboard: false,
                resolve: {}
            });
        }

    })
    .error(function(data, status, headers, config) {
        toaster.pop({
            type    : "Error",
            title   : "Ouh nou!",
            body    : "[RECUPERO CLIENTI] Errore durante il ritrovamento dei clienti"
        });
    });
};

这是java控制器:

@RequestMapping(value = "/getClienteNomeCognome", method = RequestMethod.GET)
public ResponseEntity<?> getClienteNomeCognome(@RequestParam("nomeCliente") String nomeCliente,
        @RequestParam("cognomeCliente") String cognomeCliente) {
    Object listaRisultati = null;
    try {
        listaRisultati = InterfacciamentoServiziService.getClienteNomeCognome(nomeCliente, cognomeCliente);
    } catch (Exception e) {
        LOGGER.warn(String.format("Errore inatteso sulla chiamata del servizio: [%s]", e.toString()));
        ;
    }
    LOGGER.info(String.format("Avvio ricerca cliente con nome: %s, cognome: %s)", nomeCliente, cognomeCliente));
    return new ResponseEntity<Object>(listaRisultati, HttpStatus.OK);
}

这是控制器调用的服务:

public static Object getClienteNomeCognome(String nome, String cognome) throws Exception {
        try {
            final RestTemplate restTemplate = new RestTemplate();
            final String url = "someURL?cognome=%25"+cognome+"%25&nome=%25"+nome+"%25";
            final ResponseEntity<Object[]> response = restTemplate.getForEntity(url, Object[].class);
            if (response.getBody() != null && response.getBody().toString().contains("<error>")) {
                throw new Exception(String.format(
                        "La risposta del servizio contiene degli errori: %s",
                        response.getBody()));
            } else {
                LOGGER.debug("Fine chiamata al servizio di ricerca cliente");
                return response.getBody();
            }
        } catch (HttpClientErrorException hcee) {
            throw new Exception(String.format(
                    "Errore durante la chiamata. Error: %s",
                    hcee.getMessage()));
        } catch (Exception e) {
            throw new Exception(String.format(
                    "Errore generico durante la chiamata al servizio. Error: %s"
                            + e.getMessage()));
        }

    }

0 个答案:

没有答案