簡體   English   中英

如何調用帶有@Component 注釋的 Spring Java 方法?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM