小编ice*_*dek的帖子

Tomcat和代理设置

在tomcat7上运行一个servlet,它向第三方网站发出web服务调用.该调用从Windows机器运行良好,但从tomcat运行时失败.Wont Tomcat会自动使用Windows的代理设置吗?我补充道

set JAVA_OPTS=%JAVA_OPTS% "-Dhttp.proxySet=true"
set JAVA_OPTS=%JAVA_OPTS% "-Dhttp.proxyHost=IP"
set JAVA_OPTS=%JAVA_OPTS% "-Dhttp.proxyPort=8080"
Run Code Online (Sandbox Code Playgroud)

到CATALINA.BAT和

http.proxyHost=IP
http.proxyPort=8080
Run Code Online (Sandbox Code Playgroud)

to catalina.properties但仍然没有变化.我们如何设置Tomcat使用Windows的代理设置,有没有办法检查tomcat是否正在获取指定的代理设置?

proxy tomcat java-ee tomcat7

9
推荐指数
3
解决办法
6万
查看次数

使用保留下划线的xjb覆盖JAXB属性名称

自定义xjb非常适合根据需要覆盖名称,但是我们会丢失名称中的下划线.

<?xml version="1.0" encoding="UTF-8"?>
<jxb:bindings 
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
  version="2.1">
  <jxb:globalBindings underscoreBinding="asCharInWord"/>
   <jxb:bindings schemaLocation="foo.xsd">
        <jxb:bindings node="//xs:complexType[@name='fooType']">
            <jxb:property name="value" />
        </jxb:bindings>
  </jxb:bindings>
</jxb:bindings>
Run Code Online (Sandbox Code Playgroud)

正如您在上面看到的xjb所见,生成的java代码是

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "textType", propOrder = {
"value"
})
public class FooType {

@XmlMixed
@XmlAnyElement(lax = true)
protected List<Object> value;
......
 public List<Object> getValue() {
    if (value == null) {
        value = new ArrayList<Object>();
    }
    return this.value;
}
Run Code Online (Sandbox Code Playgroud)

现在,一旦我将上面的xjb中的一行更改为:

 <jxb:property name="_value" />
Run Code Online (Sandbox Code Playgroud)

java代码中的所有更改都是:

public List<Object> get_Value() {
    if (value == null) {
        value = new ArrayList<Object>();
    }
    return this.value; …
Run Code Online (Sandbox Code Playgroud)

java jaxb xjc

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

在编组jaxb时从根元素中删除xmlns属性

这可能与JAXB Marshaller有关 - 如何抑制xmlns命名空间属性?

但我的问题有点不同.我做常规的java编组,我的xsd没有名称空间.生成的xml也没有名称空间,除了根元素.

<?xml version="1.0" encoding="UTF-8"?><rootElement xmlns:ns2="unwanted namespace">
Run Code Online (Sandbox Code Playgroud)

unwanted namespace是从同一个项目另一个模式,我不知道这是为什么被拾起在这个阶段.

我的rootElement.java由jaxb2-maven-plugin生成,如下所示:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"feed"
})
@XmlRootElement(name = "rootElement", namespace = "")
public class RootElement{
....
}
Run Code Online (Sandbox Code Playgroud)

在这一点上,我想要的是xmlns:ns2="unwanted namespace"从生成的xml中删除属性,我正在努力解决它.

我查看了我的package-info.java,它看起来像:

@javax.xml.bind.annotation.XmlSchema(namespace = "unwanted namespace", elementFormDefault =   javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package com.mypackage;
Run Code Online (Sandbox Code Playgroud)

我尝试添加他,-npajaxb2-maven-plugin由于某种原因它不会工作.我尝试了NamespaceMapper但这适用于更改前缀.我无法完全删除名称空间.这让我困扰了一天.

java xml jaxb xml-namespaces jaxb2-maven-plugin

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

标签 统计

java ×2

jaxb ×2

java-ee ×1

jaxb2-maven-plugin ×1

proxy ×1

tomcat ×1

tomcat7 ×1

xjc ×1

xml ×1

xml-namespaces ×1