如何在Eclipse中调试Web服务应用程序?
问题描述:
我正在学习Java EE技术。有没有一种方法可以使用Eclipse调试器来逐步浏览代码并逐步了解其工作原理?例如,这是一个简单的html5 +宁静服务。如何在Eclipse中调试Web服务应用程序?
有没有什么办法可以从index.html java脚本中调试,并在Eclipse中一点一点地执行代码?这将是研究这些东西的最佳方式。
非常感谢。
/**
* A simple CDI service which is able to say hello to someone
*
* @author Pete Muir
*
*/
public class HelloService {
String createHelloMessage(String name) {
return "Hello " + name + "!";
}
}
@Path("/")
public class HelloWorld {
@Inject
HelloService helloService;
@POST
@Path("/json/{name}")
@Produces("application/json")
public String getHelloWorldJSON(@PathParam("name") String name) {
System.out.println("name: " + name);
return "{\"result\":\"" + helloService.createHelloMessage(name) + "\"}";
}
/** A simple rest service saying hello */
@POST
@Path("/xml/{name}")
@Produces("application/xml")
public String getHelloWorldXML(@PathParam("name") String name) {
System.out.println("name: " + name);
return "<xml><result>" + helloService.createHelloMessage(name) + "</result></xml>";
}
}
然后,前端html 5 + java脚本。
<html>
<head>
<title>HTML5 + REST Hello World</title>
<link rel="stylesheet" href="css/styles.css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#sayHello').click(function(event) {
event.preventDefault();
var result = $('#result'),
name = $.trim($('#name').val());
result.removeClass('invalid');
if(!name || !name.length) {
result.addClass('invalid').text('A name is required!');
return;
}
//console.log("clicked: " + name);
$.ajax('hello/json/' + name, {
dataType:'json',
data:{},
type:'POST',
success:function (data) {
//console.log("success: " + data.result);
$('#result').text(data.result);
}
})
.error(function() {
//console.log("error");
});
});
}); // (document).ready
</script>
</head>
<body>
HTML5 + REST Hello World<br>
<form name="theForm">
<fieldset>
<label for="name" id="name_label">Name</label>
<input name="name" id="name" type="text" required placeholder="Your Name"/>
<input type="submit" id="sayHello" value="Say Hello"/><span id="result"></span>
</fieldset>
</form>
答
通常对于任何HTML/CSS/JavaScript代码,我调试使用内置开发工具的Chrome浏览器的。您还可以安装Eclipse插件,这将允许您逐步浏览Javascript。
http://www.eclipse.org/webtools/jsdt/debug/
犀牛调试已经存在了很多年。
至于加入Web服务,您可以在eclipse中编写测试类和/或设置断点。
本教程将帮助.... http://wso2.com/library/tutorials/debug-your-axis2-web-service-3-steps-using-eclipse/
您可以尝试在Eclipse – Ashish 2014-09-28 04:49:29
使用断点,但不能设置在JavaScript突破点。 – marlon 2014-09-28 04:53:39
只有Java代码在您的服务器上运行。您可以在Eclipse内部调试它,当它在应用程序服务器上运行时。 HTML和Javascript在您的浏览器上运行,因此您必须使用浏览器插件(Firebug for FireFox)对它们进行调试。 – t0mppa 2014-09-28 05:14:29