问题列表 - 第28791页

JAXB错误的说明:1字节UTF-8序列的字节1无效

我们正在使用JAXB解析XML文档并收到此错误:

[org.xml.sax.SAXParseException: Invalid byte 1 of 1-byte UTF-8 sequence.]
at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:315)
Run Code Online (Sandbox Code Playgroud)

这究竟是什么意思,我们如何解决这个问题?

我们正在执行以下代码:

jaxbContext = JAXBContext.newInstance(Results.class);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
unmarshaller.setSchema(getSchema());
results = (Results) unmarshaller.unmarshal(new FileInputStream(inputFile));
Run Code Online (Sandbox Code Playgroud)

更新

问题似乎是由于XML文件中的这个"有趣"字符: ¿

为什么会导致这样的问题?

更新2

文件中有两个奇怪的字符.它们位于文件的中间.请注意,该文件是基于数据库中的数据创建的,并且这些奇怪的字符以某种方式进入数据库.

更新3

这是完整的XML代码段:

<Description><![CDATA[Mt. Belvieu ¿ Texas]]></Description>
Run Code Online (Sandbox Code Playgroud)

更新4

请注意,没有<?xml ...?> 标题.

特殊字符的HEX是BF

java xml encoding jaxb utf-8

5
推荐指数
1
解决办法
2万
查看次数

控制C中存储器映射寄存器的读写访问宽度

我正在使用基于x86的内核来操作32位内存映射寄存器.仅当CPU对该寄存器产生32位宽的读写操作时,我的硬件才能正常工作.寄存器在32位地址上对齐,并且不能以字节粒度进行寻址.

我该怎么做才能保证我的C(或C99)编译器在所有情况下都只能生成完整的32位宽读写?

例如,如果我执行这样的读 - 修改 - 写操作:

volatile uint32_t* p_reg = 0xCAFE0000;
*p_reg |= 0x01;
Run Code Online (Sandbox Code Playgroud)

我不希望编译器明智地知道只有底部字节发生变化并产生8位宽的读/写.由于机器代码在x86上的8位操作通常更密集,我害怕不必要的优化.一般情况下禁用优化不是一种选择.

-----编辑-------
一篇有趣且非常相关的论文:http://www.cs.utah.edu/~regehr/papers/emsoft08-preprint.pdf

c embedded compiler-optimization memory-mapping

6
推荐指数
1
解决办法
1318
查看次数

可以在Visual Studio的输出窗口中查看OutputDebugString的输出吗?

我正在使用C#和Visual Studio 2010.

当我OutputDebugString用来编写调试信息时,它应该出现在输出窗口中吗?

我可以OutputDebugStringDebugView中看到输出,但我想我会在Visual Studio的Output窗口中看到它.我看过菜单工具选项调试常规,输出未被重定向到立即窗口.我也看了菜单工具*?选项调试输出窗口和所有常规输出设置都设置为"开".最后,我使用了Output窗口中的下拉列表来指定应该出现Debug消息.

如果我更改菜单工具*?选项调试一般将输出重定向到立即窗口,OutputDebugString消息不会出现在即时窗口中.

这是我的整个测试程序:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.Diagnostics;

namespace OutputDebugString
{
  class Program
  {
    [DllImport("kernel32.dll", CharSet = CharSet.Auto)]
    public static extern void OutputDebugString(string message);

    static void Main(string[] args)
    {
      Console.WriteLine("Main - Enter - Console.WriteLine");
      Debug.WriteLine("Main - Enter - Debug.WriteLine");
      OutputDebugString("Main …
Run Code Online (Sandbox Code Playgroud)

c# debugging capture outputdebugstring

20
推荐指数
2
解决办法
3万
查看次数

实体框架 - 可空外键错误

我有一个网站表,其中有一个客户表的外键.网站并不总是会有一个关联的客户端,但是当我在没有指定客户端的情况下保存网站时,它会出错,因为Website.ClientID是一个i​​nt32(不可为空)并且设置为0.

我尝试将我的EF图中的关系更改*为网站的旁边和客户端旁边的0..1然后它给出一个错误,说它不能为ClientID做0..1,因为它不可为空.然后我将Website.ClientID更改为可为空,但现在它给出了此错误:

TothSolutions.msl(69,10) : error 3031: Problem in mapping fragments starting 
at line 69:Non-nullable column Website.ClientID in table Website is mapped to 
a nullable entity property.
Run Code Online (Sandbox Code Playgroud)

如何设置依赖对象可以为空的外键关系?

entity-framework nullable

0
推荐指数
1
解决办法
6797
查看次数

未捕获的TypeError:无法读取未定义的属性"长度"

我有一个插件,可以访问length许多元素的属性.但是,javascript控制台指向jquery.min.js的第12行.

如何回溯以查找插件中的违规行?

javascript debugging jquery backtrace

8
推荐指数
2
解决办法
8万
查看次数

JDBC4注释在哪里?

前段时间,jdk 6发布了带有" 基于注释的SQL查询 "的JDBC4 .我正在寻找测试方法,但没有在JDK 6中找到所需的类(如java.sql.BasicQuery).在Google上搜索了一点,我发现java.net上有一个线程告诉这些"用户的易用性" "由于缺乏时间,JDK中最终没有包含这些功能.这里有人告诉我更多关于这些功能的未来可用性吗?

java annotations jdbc

5
推荐指数
1
解决办法
2162
查看次数

如何获取和/或保存查询集条件到数据库?

我想将查询集条件保存到数据库以供重用.

所以,如果我有一个像这样的查询集:

Client.objects.filter(state='AL') 

# I'm simplifying the problem for readability. In reality I could have 
# a very complex queryset, with multiple filters, excludes and even Q() objects.
Run Code Online (Sandbox Code Playgroud)

我想保存到DB而不是查询集的结果(即具有匹配'AL'的状态字段的各个客户端记录); 但是查询集本身(即用于过滤客户端模型的标准).

最终目标是拥有一个"已保存的过滤器",可以从数据库中读取并由多个django应用程序使用.

起初我以为我可以序列化查询集并保存它.但序列化查询集实际上执行查询 - 然后我在序列化时最终得到了阿拉巴马州的静态客户端列表.我希望列表是动态的(即每次我从DB读取它应该执行的查询集并检索Alabama中最新的客户端列表).


编辑:或者,是否可以获取应用于查询集的过滤器列表?

就像是:

qs = Client.objects.filter(state='AL')
filters = qs.getFilters()
print filters

{ 'state': 'AL' }
Run Code Online (Sandbox Code Playgroud)

django django-queryset

15
推荐指数
1
解决办法
3769
查看次数

pipe.communicate的Python编码

我从Python 2.6中调用pipe.communicatePython的subprocess模块.我从这段代码中得到以下错误:

from subprocess import Popen

pipe = Popen(cwd)

pipe.communicate( data )
Run Code Online (Sandbox Code Playgroud)

对于任意cwd,以及data包含unicode(特别是0xE9)的地方:

Exec. exception: 'ascii' codec can't encode character u'\xe9' in position 507: ordinal not in range(128)
Traceback (most recent call last):  

... stdout, stderr = pipe.communicate( data )

  File
"/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py",
line 671, in communicate
    return self._communicate(input)

  File
"/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py",
line 1177, in _communicate
    bytes_written = os.write(self.stdin.fileno(), chunk)
Run Code Online (Sandbox Code Playgroud)

我认为这是正在发生的,因为pipe.communicate()期望ASCII编码的字符串,但是data是unicode.

这是我遇到的问题,我是否有办法将unicode传递给pipe.communicate()

谢谢你的阅读!

布赖恩

python unicode encoding subprocess popen

11
推荐指数
1
解决办法
5106
查看次数

验证电子邮件域是否存在

有人检查电子邮件地址的域名作为其验证步骤的一部分吗?例如.如果用户指定blah@gmail.com作为他们的地址,请确认gmail.com存在.


我应该注意,在我的webapp中,现有用户可以将邀请转发给他们的朋友.我根本不需要验证这些邀请.相反,我只是想警告我的用户是否有错字等可能正在向错误的人发送邀请.这甚至值得吗?

c# asp.net smtp

10
推荐指数
2
解决办法
7535
查看次数

我可以从BindingSource获取项目类型吗?

我想获得BindingSource连接或配置的项目类型.BindingSource.DataSource属性可以设置为对象,列表或类型.如果它是一个Type,它显然还没有绑定项,但我仍然希望得到Type.对于List,我需要项目Type,而不是列表类型.

我目前有一个自定义列表类型用于实现IListItemType接口的业务对象,我创建这个接口是为了解决这个问题.我现在想以更通用的方式使用它,以便它可以用于任何列表.

我已经查看了API文档以获得这样做的好方法,但到目前为止我还没有运气.我错过了什么,或者这只是我不能或不应该做的事情?

c# vb.net bindingsource winforms

3
推荐指数
1
解决办法
3659
查看次数