小编Mic*_*l-O的帖子

带有元素引用的JAXB多个模式

我有两个使用JAXB处理的模式.第一个模式已预处理,并使用剧集文件(http://www.java.net/blog/2006/09/05/separate-compilation-jaxb-ri-21)使用此信息.第二个模式导入第一个模式,并再次使用jaxb进行处理.这一切都按预期工作.

但是现在我在第一个模式中有一个元素,在第二个模式中使用了一个引用.

架构a:

<schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:test="http://www.example.org/Test/"
targetNamespace="http://www.example.org/Test/">
<element name="type" type="test:MyType"></element>
Run Code Online (Sandbox Code Playgroud)

架构b:

<schema elementFormDefault="qualified" 
xmlns="http://www.w3.org/2001/XMLSchema" 
xmlns:second="http://www.example.org/Second/"
xmlns:test="http://www.example.org/Test/"
targetNamespace="http://www.example.org/Second/">

<import namespace="http://www.example.org/Test/" />

<complexType name="SomeType">
    <sequence>
        <element ref="test:type" minOccurs="1" maxOccurs="unbounded" />
    </sequence>
</complexType>
Run Code Online (Sandbox Code Playgroud)

在处理过程中没有任何错误,但两个模式的生成代码提供了相同的方法:

public JAXBElement<EventType> createType(TypeType value)
Run Code Online (Sandbox Code Playgroud)

在运行时,这会导致以下错误:

com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException: 1 counts of 
    IllegalAnnotationExceptions
The element name {http://www.example.org/Type/}type has more than one mapping.
Run Code Online (Sandbox Code Playgroud)

如何防止JAXB创建重复的createType方法?

提前致谢!

更新:我在JAXB邮件列表上询问了同样的问题,在该列表中我还发布了一个工作示例.可以在以下位置找到该主题和示例:http://java.net/projects/jaxb/lists/users/archive/2011-03/message/18

在这个列表中,我被建议了一个解决方法,现在我可以按照我喜欢的方式使用模式.但我仍然认为JAXB不应该创建额外的"创建"方法,因为它应该已经在剧集文件中.

java schema jaxb xjc

29
推荐指数
1
解决办法
6589
查看次数

为什么我可以在使用双引号声明时将指针用作字符串,而不是在C中使用花括号?

如果我声明并使用这样的指针:

int counter;
char *pCow = "pCow goes MOO";

for(counter = 0; counter < 14; counter++)
    printf("%c", pCow[counter]);
Run Code Online (Sandbox Code Playgroud)

它显示整个字符串并且工作,是的,并且有很多欢乐.

但是,如果我使用这样的初始化器:

int counter;
char *pCow = {'p','C','o','w',' ','g','o','e','s',' ','M','O','O','\0'};

for(counter = 0; counter < 14; counter++)
    printf("%c", pCow[counter]);
Run Code Online (Sandbox Code Playgroud)

程序崩溃了,pCow拒绝为我的享乐主义乐趣而呻吟!

3 Warnings. 0 Errors
line 11 (near initialization for 'pCow') [enabled by default]   C/C++ Problem
line 11 excess elements in scalar initializer [enabled by default]  C/C++ Problem
line 11 initialization makes pointer from integer without a cast [enabled by default]   C/C++ Problem …
Run Code Online (Sandbox Code Playgroud)

c string pointers

28
推荐指数
2
解决办法
1413
查看次数

为什么System.nanoTime()和System.currentTimeMillis()如此迅速地分开?

出于诊断目的,我希望能够在长时间运行的服务器应用程序中检测系统时钟的变化.由于System.currentTimeMillis()是基于挂钟时间并且System.nanoTime()基于挂钟时间独立(*)的系统计时器,我想我可以使用这些值之间的差异的变化来检测系统时间变化.

我写了一个快速测试应用程序,看看这些值之间的差异是多么稳定,令我惊讶的是,这些值在我每秒几毫秒的水平上立刻发散.有几次我看到了更快的分歧.这是在带有Java 6的Win7 64位桌面上.我没有在Linux(或Solaris或MacOS)下尝试过这个测试程序来查看它的执行情况.对于这个应用程序的一些运行,分歧是积极的,对于某些运行它是负面的.它似乎取决于桌面正在做什么,但很难说.

public class TimeTest {
  private static final int ONE_MILLION  = 1000000;
  private static final int HALF_MILLION =  499999;

  public static void main(String[] args) {
    long start = System.nanoTime();
    long base = System.currentTimeMillis() - (start / ONE_MILLION);

    while (true) {
      try {
        Thread.sleep(1000);
      } catch (InterruptedException e) {
        // Don't care if we're interrupted
      }
      long now = System.nanoTime();
      long drift = System.currentTimeMillis() - (now / ONE_MILLION) - base;
      long interval = (now …
Run Code Online (Sandbox Code Playgroud)

java windows time datetime

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

无法获取Kerberos服务票证:KrbException:在Kerberos数据库中找不到服务器(7)

我正在使用GSSAPI进行开发,并且我的代码与vanilla MIT Kerberos 5服务器一起工作以执行一些客户端/服务器工作.我现在正在验证它对Active Directory的功能,我遇到了一个问题.

我的服务器经过身份验证和监听.我可以让客户登录.为了记录,这是基于http://thejavamonkey.blogspot.com/2008/04/clientserver-hello-world-in-kerberos.html的代码.但是,我无法让客户端从AD获取故障单以获取它与服务器之间的会话.我得到KrbException:在Kerberos数据库(7)中找不到服务器,我无法弄清楚添加它的适当位置.我已经尝试将服务器名称与ip放在hosts文件中,更新dns,放入服务器记录等,没有运气.

如果有人知道更新AD以在Kerberos数据库中设置服务器的适当位置,那就太棒了!

kerberos active-directory

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

什么时候Java 6生命终结?(在编写开发人员工具的上下文中)

背景

这并不像你想象的那样立即明白.

首先,虽然甲骨文已经停止了对Java 6的公众支持,截至2013年2月,但Premier支持将于2013年12月完成,而扩展支持将持续到2016年12月,这有点长尾.最重要的是,持续支持可以永远持续下去.

下一个主要的Java供应商IBM 似乎甚至没有发布对Java 6的支持(并且在2013年9月之前仍然支持Java 5!)

第三,我们有Apple:2013年6月目前最新的补丁和"该公司没有详细说明其黑白支持政策"似乎是任何人的猜测...但如果他们处理Java 5可以是作为基础我们可能会看到另外18个月左右... 2014年底 - 是吗?

最后我们有OpenJDK ...... Red Hat已经表示他们现在将支持 ......

我甚至没有开始考虑其他JVM实现只是在野外看到的更常见的!

所以从我所看到的,到目前为止,只要你有钱支付Oracle/IBM/Red Hat,你就可以继续获得无限期支持的Java 6版本......

也许我们可以开始更好地构建这个问题,并获得一个非无限期答案的机会:

  • 如果您无法再购买特定JVM运行的硬件/操作系统,那么继续支持该特定JVM有点没有用处.扩展的支持合同适用于现有客户,他们现有的系统很可能满足他们现有的需求......如果他们不能更换为更新的

    这实际上为我们提供了一些关于Apple的背景......由于Apple硬件支持5年(​​如果在加利福尼亚州为7),那么唯一受支持的Apple硬件应该是基于x86的硬件,因为交换机已于2006年12月完成(是最后一个基于PPC的硬件)苹果硬件出货),所以实际上我们不必担心在PPC上运行的Apple Java版本

    同样,我们可以排除在旧版Windows上运行的任何Java版本.这意味着2014年4月如果Java安装程序无法在Windows 7+上运行,那么我们是否可以有效地忽略Windows XP支持的Java版本?

  • 我真正感兴趣的是开发人员工具何时可以推进其最低Java版本.

    一段时间以来,Jenkins一直保持对Java 5的支持,但更新的更新意味着1.520+需要Java 6或更高版本的主服务器和从服务器.如果某些构建从属(例如传统硬件)无法运行较新的JVM,则会导致问题.

    Maven在将JVM分解为J2SE 1.3以运行单元测试方面有着悠久的历史,但从Surefire 2.15开始,它只支持与Java 5一样低的运行单元测试.

    javac在移动到1和三回政策的条款-source-target......所以我们需要等到JDK 10之前的Java 6的源文件支持从javac的下降......计划于2年的发行节奏和Java 8 2014年初发布,这将意味着2016年初的JDK9和2018年初的JDK10 ...但JDK9将在公开维护3年后可用,这意味着2019年的某个时候可能会删除JDK 6源代码兼容性.

是否有明确的日期可用于确定何时OSS开发人员工具链可以放弃对Java 7之前的JVM的支持,那个日期是什么?

OSS的区别非常重要,因为OSS开发人员通常没有资金来购买扩展/优质/维持型支持合同,而且很可能无法访问模糊/大型机硬件.

更新:通过"支持Java 7之前的JVM",我的意思是编译整个工具链是安全的,-target 7 …

java java-6

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

查询DNS服务记录以查找主机名和TCP/IP

在一篇关于生命科学标识符的论文中(参见LSID Tester,一种测试生命科学标识符解析服务的工具),Roderic DM Page博士写道:

鉴于LSID urn:lsid**:ubio.org**:namebank:11815,查询DNS以获取_lsid._tcp的SRV记录.ubio.org返回animalia.ubio.org:80作为ubio.org LSID服务的位置.

我了解到我可以使用unix上的host命令将_lsid._tcp.ubio.org链接到animalia.ubio.org:80 :

host -t srv _lsid._tcp.ubio.org
_lsid._tcp.ubio.org has SRV record 1 0 80 ANIMALIA.ubio.org
Run Code Online (Sandbox Code Playgroud)

如何使用Java J2SE API执行此"DNS"操作(没有任何外部Java库,我想要一个轻量级的解决方案)?

谢谢

java dns host bioinformatics

6
推荐指数
2
解决办法
8919
查看次数

C++中的REST客户端

有没有人在他们的企业产品中成功尝试过任何C++ REST库(客户端).它可以是软件堆栈的集合,但应具备在所有平台上运行的能力,即:Win,Linux,Solaris,AIX,HP-UX.

c++ xml rest client

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

为什么在Authentication和UserDetails中有Spring复制字段?

同时实现与Spring Security的一些安全方面,我注意到,双方AuthenticationUserDetails有重复的方法,如getAuthorities,getCredentials等等.

这背后的目标是什么?对我来说,这似乎是一种无用的冗余.

编辑:由于人们懒得检查签名.两个接口都有相同的方法.我不是指那个getCredentials而且getAuthorities是一样的.为什么这会让人们做出这样的假设?

authentication spring spring-security

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

如何区分ntlm和ntlmv2身份验证

我正在查看一些旧代码,并试图确定该应用程序是使用ntlm还是ntlmv2。

查看源时,响应头设置为“ WWW-Authenticate”,“ NTLM”。

但是我不确定这是否表示身份验证类型。

如何区分ntlm和ntlmv2身份验证?

ntlm ntlmv2

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

将资源放在jar文件中并将它们暴露给Web

  1. 我有一个Web应用程序,其资源文件夹有一堆js和css文件.如何将它们暴露给网络以便能够在我的网页中引用它们?这些文件是如何引用的?

  2. 我还想稍后将这些资源放在一个单独的jar文件中(和上一个问题一样)也将它们暴露给Web.我怎么能用maven呢?我的意思是,将它们打包以便它们可以在META-INF /资源中.

java resources

4
推荐指数
1
解决办法
1661
查看次数