我目前在TFS中有相当多的待定更改.现在,我想创建一个新分支(基于代码的服务器版本,这是那些挂起的更改的基础),并将我的挂起更改传输到新分支.
谷歌告诉我关于搁架的问题,我已经知道了,但是看不出它对我有什么帮助,因为我想把这些改变转移到新的基础路径上.
是否有更简单的方法来传输挂起的更改,而不是手动签出和复制每个文件?
部署环境:Windows Server 2008,Tomcat 7.0.5,Oracle JRE 1.6.开发环境与Eclipse Helios相同.
当我尝试部署使用OpenSAML 2.3.1的Java应用程序并对其进行实时测试时,它不想运行.查看源代码和堆栈跟踪,似乎DefaultBootstrap.bootstrap()最终会导致java.lang.IllegalArgumentException: InputStream cannot be null.我在下面包含完整的堆栈跟踪.
目标部署系统上的软件版本,或者至少应该与我的开发盒上的软件版本完全相同,其中一切运行得很好,但当然我没有使用.war进行部署.我明显感觉到我在部署档案中遗漏了一些XML或DTD文件,但这种感觉本身并没有帮助我修复它.谷歌搜索堆栈跟踪的部分也没有真正帮助我.
我从哪里开始追踪此错误的实际根本原因,以便我可以修复它?
2011-feb-10 10:56:08 org.apache.catalina.core.StandardWrapperValve invoke
ALLVARLIG: Servlet.service() for servlet [se.novasoftware.gabriel.SAMLParser] in context with path [/ServiceTier] threw exception [java.lang.IllegalArgumentException: InputStream cannot be null] with root cause
java.lang.IllegalArgumentException: InputStream cannot be null
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:120)
at org.opensaml.xml.parse.BasicParserPool$DocumentBuilderProxy.parse(BasicParserPool.java:643)
at org.opensaml.xml.parse.BasicParserPool.parse(BasicParserPool.java:216)
at org.opensaml.xml.XMLConfigurator.load(XMLConfigurator.java:141)
at org.opensaml.DefaultBootstrap.initializeXMLTooling(DefaultBootstrap.java:148)
at org.opensaml.DefaultBootstrap.bootstrap(DefaultBootstrap.java:88)
at _mynamespace_.saml.ParsedResponse.<init>(ParsedResponse.java:56)
at _mynamespace_.saml.ParsedResponse.<init>(ParsedResponse.java:104)
at _mynamespace_.SAMLParser.doPost(SAMLParser.java:29) // servlet entry point
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240) …Run Code Online (Sandbox Code Playgroud) 我可以从slf4j获得一个虚拟记录器吗?(想想空对象设计模式.)如果是这样,有人可以提供一个例子吗?或者,如果我想这样做,我是否必须实施自定义记录器?
我希望写一个函数
private Logger logger;
static Logger nullLogger;
static {
nullLogger = getMeADummyLogger();
}
public Logger getLogger() {
return this.logger == null ? nullLogger : this.logger;
}
// then, elsewhere:
this.getLogger().info("something just happened");
Run Code Online (Sandbox Code Playgroud)
而没有得到NullPointerException,如果没有记录器已被设置在最后一行.
我发现Java的+ =, - =,*=,/ =复合赋值运算符(好问题:)),但它有一部分我不太明白.借用这个问题:
Run Code Online (Sandbox Code Playgroud)int i = 5; long l = 8;然后
i = i + l;将不会编译但i += l;将编译正常.
联系问题的接受答案表明:
形式E1 op = E2的复合赋值表达式等效于E1 =(T)((E1)op(E2)),其中T是E1的类型,除了E1仅被评估一次.
这给出i += l;了与仅评估一次i = (int)((i) + (l));的异常相同的内容i.
A long可能(IIRC甚至保证)长于a int,因此可以保持更大范围的值.
鉴于这种情况很容易导致数据丢失,因为在执行语句(r值表达式评估或赋值)期间的某些时刻必须缩小转换,为什么i += l;不是编译时错误或至少是警告?
我有:
op1 = Integer.parseInt(jTextField1.getText());
op2 = Integer.parseInt(jTextField2.getText());
Run Code Online (Sandbox Code Playgroud)
但是,我想首先检查文本字段的值是否可以分配给整数变量.我怎么做?
我已经经历了很长一段时间,所以,如果这已经在这里被问过,请原谅我
这段代码在C#中运行得很好,尽管int可以隐式转换为double和float:
void Main()
{
int x = 7;
F(x);
}
void F(double a)
{
a.Dump("double");
}
void F(float a)
{
a.Dump("float");
}
Run Code Online (Sandbox Code Playgroud)
那么,为什么这段代码不能编译?(以下方法或属性之间的调用不明确:'UserQuery.F(double)'和'UserQuery.F(decimal)')
void Main()
{
int x = 7;
F(x);
}
void F(double a)
{
a.Dump("double");
}
void F(decimal a)
{
a.Dump("decimal");
}
Run Code Online (Sandbox Code Playgroud)
我所做的就是用float变量替换函数的decimal变体.
我有几个不同长度的字符串
"2323"
"245"
"353352"
Run Code Online (Sandbox Code Playgroud)
我需要将它们转换为相同大小的字符串,例如:
"0002323"
"0000245"
"0353352"
Run Code Online (Sandbox Code Playgroud)
如何在每个字符串前面自动添加正确数量的0?
谢谢
我试图让Apache Commons HttpClient库(版本3.1)忽略服务器证书无法建立为受信任的事实(由抛出的异常证明javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target).
我确实发现从Java连接到HTTPS服务器并忽略安全证书的有效性以及在Java SSL连接中禁用证书验证,但第一个接受的答案是针对HttpClient 4.0(遗憾的是我无法升级,除非有人可以指出我如何在同一个项目中使用同一个库的两个不同版本的方向),虽然它确实有另一个答案,只有一个死链接,据说是去了3.x解决方案.当我使用它的稍微调整版本时,第二页上的代码似乎完全没有效果(基本上,以旧方式声明类而不是使用匿名内联类,以及TLS除了应用之外SSL,使用SSLfor默认的HTTPS套接字工厂,如示例代码中所示).
最好,我想要一些线程/实例范围的东西,以便从我的servlet代码中HttpClient创建的任何实例(和/或相关类)(而不是在同一容器中运行的另一个servlet)将使用宽松的证书验证逻辑,但在这一点上,我开始觉得只要它接受自签名证书有效就会做任何事情.
是的,我知道存在安全隐患,但我完全需要这个的唯一原因是出于测试目的.我们的想法是实现一个配置选项来控制通常不受信任的证书是否可信,并将其保留为"不信任不可信赖的服务器证书"作为默认值.这样,它可以在开发中轻松打开或关闭,但在生产中执行它将需要不受欢迎.
我正在使用DocumentBuilderjava 1.4 解析XML .
XML的第一行是
xml version="1.0" encoding="GBK"
Run Code Online (Sandbox Code Playgroud)
我想得到XML的编码类型并使用它.我怎样才能获得"GBK"
基本上我将再创建一个我希望encoding="GBK"保留的XML .
目前它正在迷失并设置为默认UTF-8
有许多不同编码的XML我需要读取编码od源和必要的东西.
请帮忙
有人可以帮我解决最短步骤评估三个条件的最快方法吗?我有三个条件,如果两个中的任何一个都是真的,那么整个表达式就变成了true另一个false.
我尝试了两种方法:
if ((condition1 && condition2) ||
(condition1 && condition3) ||
(condition2 && condition3))
Run Code Online (Sandbox Code Playgroud)
另一种方法是引入变量i和
i = 0;
if (condition1) i++;
if (condition2) i++;
if (condition3) i++;
if (i >= 2)
//do something
Run Code Online (Sandbox Code Playgroud)
我想要比上面两个更好的任何其他有效方法.
我在内存受限的环境中工作(Atmeta8具有8 KB的闪存)并且需要一个在C中工作的解决方案.