RESTEasy(一个JAX-RS实现)有一个很好的客户端框架,例如:
RegisterBuiltin.register(ResteasyProviderFactory.getInstance());
SimpleClient client = ProxyFactory.create(SimpleClient.class, "http://localhost:8081");
client.putBasic("hello world");
Run Code Online (Sandbox Code Playgroud)
你如何设置HTTP标头?
澄清:
jkeeler提出的解决方案是一个很好的方法,但我想在ProxyFactory级别设置HTTP标头,我不想将标头传递给客户端对象.有任何想法吗?
我正在尝试理解whenjQuery中的函数和延迟对象.
$.when($.getJSON('/echo/json', function () {
console.log('sucess');
}, function () {
console.log('error');
})).then(console.log('get JSON ready!'));
Run Code Online (Sandbox Code Playgroud)
此示例返回:
get JSON ready!
sucess
Run Code Online (Sandbox Code Playgroud)
...但我希望首先实现成功回调:
sucess
get JSON ready!
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
使用nginx为每个应用程序使用不同的子目录设置多个Play 2.1应用程序.
运行的App1 127.0.0.1:4000应该可以在127.0.0.1/dev
运行的App2 下访问,127.0.0.1:5000应该可以访问127.0.0.1/test
nginx.conf
worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
upstream app1 {
server 127.0.0.1:4000;
}
upstream app2 {
server 127.0.0.1:5000;
}
server {
listen 80;
server_name localhost;
location /dev {
rewrite /(.*) /$1 break;
proxy_pass http://app1;
}
location /test {
rewrite /(.*) /$1 break;
proxy_pass http://app2;
}
}
}
Run Code Online (Sandbox Code Playgroud)
App1 - application.conf
application.context=/dev
Run Code Online (Sandbox Code Playgroud)
App2 - application.conf
application.context=/test
Run Code Online (Sandbox Code Playgroud)
使用此配置,我可以访问这两个应用程序,但只加载了html代码.未加载所有静态文件(css,js,images).
我认为这是缓存问题.我试过不同的nginx参数,没有运气.如果我第一次请求该站点,浏览器会响应(例如,for …
我正在玩computer-database-jpa(Java) Play Framework 2.1示例应用程序.当我在内存数据库中使用H2时,一切正常,但是当我想将应用程序与MySQL连接时,我遇到了问题.
有人遇到了同样的问题(帮助想要将示例应用程序连接到MySQL),但没有解决方案.
我添加了mysql-connector(Build.scala):
val appDependencies = Seq(
....
"mysql" % "mysql-connector-java" % "5.1.18"
)
Run Code Online (Sandbox Code Playgroud)
并编辑了application.conf:
db.default.url="jdbc:mysql://password:user@localhost/my-database"
db.default.driver=com.mysql.jdbc.Driver
Run Code Online (Sandbox Code Playgroud)
当我启动应用程序并应用1.sql(进化脚本)时,我收到一个错误:
You have an error in your SQL syntax; check the manual that corresponds to
your MySQL server version for the right syntax to use near 'sequence company_seq
start with 1000' at line 1 [ERROR:1064, SQLSTATE:42000]
Run Code Online (Sandbox Code Playgroud)
有谁知道如何解决这个问题?
java ×2
deferred ×1
http-headers ×1
javascript ×1
jax-rs ×1
jquery ×1
mysql ×1
nginx ×1
resteasy ×1