[英]How do i call a Spring Java method annotated with @Component?
我有一個由 tomcat 運行的前端和由 Mule 運行的后端處理。
舉個例子,
HelloWorld.html
<div> <button id="btnSayHello" ng-click="sayHello()" data-transalte>Click Me</button> </div>
HelloWorld.js
$scope.sayHello = function() { $http({ method: 'GET', url: $rootScope.serviceUrl + '/triggers/greetings/' + $scope.name }).success(function (response) { alert("Success"); }).error(function () { alert("Error"); }) }
MyTriggers.java
@Component @Path("/triggers") public class MyTriggers {... @GET @Produce("text/plain") @Path("/greetings/{name}") @Consume("text/plain") public String sayHello(@PathParam("name") String name) { log.info("Hello, " + name); return "SUCCESS"; } }
我的結果一直以錯誤的形式返回,這意味着它在 JavaScript 級別失敗。
不太確定出了什么問題。
Tomcat 在 localhost:8080 上運行。
難道是因為我的 Java 被編譯成 Mule.zip 文件,而我的前端被編譯成 tomcat.war 文件?
你需要一個 REST Controller (這里的好例子)類似:
@RestController
public class MyTriggers {
...
@GetMapping("/greetings/{name}", produces = "text/plain")
public String sayHello(@PathParam("name") String name) {
log.info("Hello, " + name);
return "SUCCESS";
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.