我正在使用Jersey(1.9.1)并将JAXB用于我的对象,并尝试添加一个简单的JSON对象字段,理想情况下是Jackson的JsonNode类型,但我也可以使用jettison的JSONObject(甚至是GSON的JsonObject)/JsonElement)
原因是因为我想允许发送'自由格式'json(作为我们示例中的obj元素),以及同一对象上的其他元素(使用JAXB注释)
我的目标:
import org.codehaus.jettison.json.JSONObject;
@XmlRootElement(name="moo")
@XmlAccessorType(XmlAccessType.FIELD)
public class Moo {
@XmlElement
JSONObject obj;
...
}
Run Code Online (Sandbox Code Playgroud)
我的资源:
@Path("/moo")
@POST
@Produces({MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_JSON})
public Response postMsg(Moo e) {
System.out.println(e);
return Response.status(200).entity(e).build();
}
Run Code Online (Sandbox Code Playgroud)
有效载荷:
{"obj": {"my": "custom", "object": 1, "here": [1, 2, 3] } }
Run Code Online (Sandbox Code Playgroud)
使用上述执行POST请求时 - obj是空的JSONObject.同样的事情发生了,当我试着用杰克逊JsonNode和GSON的JsonElement/ JsonObject.
但是,当我JSONObject用作方法的arg时,它能够解析它
@Path("/moo")
@POST
@Produces({MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_JSON})
public Response postMsg(JSONObject e) {
System.out.println(e);
return Response.status(200).entity(e).build();
}
Run Code Online (Sandbox Code Playgroud)
我认为这是因为Jersey使用自己com.sun.jersey.json.impl.provider.entity.JSONObjectProvider的编组,而JAXB使用自己的marshller.
有没有办法解决这个问题,同时仍然使用JAXB的注释(对于其他领域)?我尝试XmlAdapter使用自定义(使用@XmlJavaTypeAdapter注释)而没有任何成功(因为我得到的对象ValueType是一个DOM元素) …
Helllo,我收到此错误:
CS0246:找不到类型或命名空间名称'DataClasses1DataContext'(您是否缺少using指令或程序集引用?)
对于此.aspx文件:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class WebApplication1_admin_Places : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DataClasses1DataContext db = new DataClasses1DataContext();
var query = (from m in db.Places orderby m.Name select m);
PlacesList.DataSource = query;
PlacesList.DataBind();
}
}
Run Code Online (Sandbox Code Playgroud)
事情是,在/文件夹我可以访问数据库,但在/ admin文件夹我得到这个错误.
我究竟做错了什么?
编辑
CS0012:类型'System.Data.Linq.DataContext'在未引用的程序集中定义.您必须添加对程序集'System.Data.Linq,Version = 3.5.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的引用.
那是什么意思?
我有这个代码:
<form Name="AddPlace" ID="AddPlace" action="AddPlace.aspx" class="niceform" method="post" runat="server">
Run Code Online (Sandbox Code Playgroud)
当我尝试执行代码时,我得到了这个:
<form name="aspnetForm" method="post" action="AddPlace.aspx" id="aspnetForm" class="niceform">
Run Code Online (Sandbox Code Playgroud)
怎么变了?
我正在尝试使用javascript同时提交2个表单.但是,似乎只有第二次提交被打开,而不是第一次提交.
代码很简单:
<html>
<body>
<form id="report_0" method="POST" target="_blank" action="https://www.google.com">
<input type="hidden" name="test1" value="1">
<input type="submit" value="report_0">
</form>
<form id="report_1" method="POST" target="_blank" action="https://www.google.com">
<input type="hidden" name="test2" value="2">
<input type="submit" value="report_1">
</form>
<script>
document.getElementById("report_0").submit();
document.getElementById("report_1").submit();
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我不能使用ajax或等价物,因为它必须是'本机'POST(由于CORS问题)
我在某处读到你不能同时提交两份表格,这对我来说没有意义.我已经尝试将目标从"_blank"更改为"form1"和"form2"但仍然没有.
非常感谢您的帮助:)
编辑
这是我实际使用的:
for (....) {
var form = document.createElement("form");
form.setAttribute("name", "report_"+i);
form.setAttribute("method", "POST");
form.setAttribute("target", "_blank");
form.setAttribute("action", action);
for (var key in parms) {
var field = document.createElement("input");
field.setAttribute("type", "hidden");
field.setAttribute("name", key);
field.setAttribute("value", parms[key]);
form.appendChild(field);
}
console.log(form);
document.body.appendChild(form);
form.submit();
document.body.removeChild(form); …Run Code Online (Sandbox Code Playgroud) 嘿,我试图做一个底部粘性页脚链接测试,但它保持超过100%意味着它滚动了一点点..
所以我制作了一个简单的HTML代码,没有任何添加,但仍然超过100%,请看这里:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="he" lang="he" dir="rtl" id="bangler">
<head>
<title>my title</title>
<style type="text/css">
html, body, #wrapper { height: 100%; }
body > #wrapper { height: auto; min-height: 100%; }
</style>
</head>
<body>
<div id="wrapper">aa</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
问题是,它滚动了一点点,然后100%意味着大约5-10px ...这在IE和Firefox上都很奇怪!
提前致谢 !
我想帮助您提出一个比较2个阵列的公式:
Array A:
444444
333333
222222
Array B
111111111
123124123
124124111
444444
我想比较2个数组并返回两个数组中存在多少个值.所以对于出现在顶部的这两个数组,它应该读为1,因为两个数组中只存在'444444'.
我之所以谈论数组而不是单元格/列/行是因为我使用= QUERY()函数来获取数组.