我需要执行一个执行另一个Java应用程序的批处理文件.我不关心它是否成功执行,我不必捕获任何错误.
是否可以使用ProcessBuilder执行此操作?如果我不捕获错误会有什么后果?
但是,我的要求只是执行另一个Java应用程序.
我正在寻找一种方法来加密Java程序正在读取的配置文件中的密码.目前,我从文本文件中读入了密码,但如果有人要查看配置文件,那么密码就会保持在开放状态.
我正在考虑构建一个简单的类,用户可以输入所需的密码,获取密码的加密版本,然后将加密版本粘贴到配置文本文件中.然后应用程序将读取加密密码,将密码解密回字符串,然后继续.
我遇到了字符串 - >加密字节 - >字符串转换的问题.
我使用内置的java安全类来实现此代码.以下是一些示例测试代码:
// Reads password from config file
String password = ScriptConfig.getString( "password" );
// Generate Key
KeyGenerator kg = KeyGenerator.getInstance("DES");
Key key = kg.generateKey();
// Create Encryption cipher
Cipher cipher = Cipher.getInstance( "DES" );
cipher.init( Cipher.ENCRYPT_MODE, key );
// Encrypt password
byte[] encrypted = cipher.doFinal( password.getBytes() );
// Create decryption cipher
cipher.init( Cipher.DECRYPT_MODE, key );
byte[] decrypted = cipher.doFinal( encrypted );
// Convert byte[] to String
String decryptedString = new String(decrypted);
System.out.println("password: " …
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个宏,其中更改任何列应自动保存工作表.
我的Excel表格扩展到了G25
.
我尝试了这个,但它不起作用:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Target.Worksheet.Range("G25")) Is Nothing Then
ActiveWorkbook.Save
End Sub
Run Code Online (Sandbox Code Playgroud)
我保存下来了ThisWorkBook
.
任何帮助表示赞赏.
我在使用SSHJ时遇到异常.
这是我实现它的方式:
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
final SSHClient ssh = new SSHClient();
ssh.loadKnownHosts();
ssh.connect("serverName");
try{
ssh.authPublickey("myUserId");
final Session session = ssh.startSession();
try{
final Command cmd = session.exec("net send myMachineName Hello!!!");
System.out.println(cmd.getOutputAsString());
System.out.println("\n Exit Status: "+cmd.getExitStatus());
}finally{
session.close();
}
}finally{
ssh.disconnect();
}
}
}
Run Code Online (Sandbox Code Playgroud)
但我得到以下异常:
Exception in thread "main" java.io.IOException: Could not load known_hosts
at net.schmizz.sshj.SSHClient.loadKnownHosts(SSHClient.java:528)
at SSHTEST.main(SSHTEST.java:25)
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
为了处理JSF中的viewExpiredException,我进行了编码
<error-page>
<exception-type>javax.faces.application.ViewExpiredException</exception-type>
<location>/error.html</location>
</error-page>
<session-config>
<session-timeout>1</session-timeout>
</session-config>
Run Code Online (Sandbox Code Playgroud)
在web.xml
.
在error.html
我已重定向到原始登录页面.但问题是会话范围bean即使会话过期也没有被清除.有什么方法可以解决这个问题吗?
log4j.appender.ERROREMAIL=org.apache.log4j.net.SMTPAppender
log4j.appender.ERROREMAIL.SMTPHost=www.company.com
log4j.appender.ERROREMAIL.Threshold=ERROR
log4j.appender.ERROREMAIL.To=email.address1@company.com,email.address2@company.com,email.address3@company.com
log4j.appender.ERROREMAIL.From=some.emailaddress.com
log4j.appender.ERROREMAIL.Subject=messagesubject1
Run Code Online (Sandbox Code Playgroud)
我正在使用上面提到的log4j属性文件来发送电子邮件
log.error("Error message");
Run Code Online (Sandbox Code Playgroud)
如何使其成为动态的,以便消息主题可以根据计算机名称(env名称)动态更改.
例如:
log4j.appender.ERROREMAIL.Subject=messagesubject1, messagesubject2, messagesubject3
Run Code Online (Sandbox Code Playgroud)
我想根据机器名称动态使用主题1,2和3.
任何帮助将不胜感激.谢谢
如何在javascript中使输入字段可编辑.我的意思是onFocus将它置于插入模式,以便可以覆盖值.有什么建议 ???
我使用以下cmd打印pdf:
acroRD32.exe /t "file1.pdf" "printerName"
Run Code Online (Sandbox Code Playgroud)
一切正常,但会弹出一个窗口.任何人都可以帮我禁用它.我尝试了这个问题中包含的各种选项, 但不能成功.
任何帮助表示赞赏.
我有两页.搜索页面是获取用户输入的第一页.第二页显示了数据表中的结果集.第二页有3个面板用于结果集,更新并在单页中创建所有.根据单击的按钮,我将渲染面板设为true和false.
<h:panelGroup styleClass="panelGroup"
id="resultSet" rendered="#{bean.truefalse1}">
.
.
</h:panelGroup
<h:panelGroup styleClass="panelGroup"
id="updateForm" rendered="#{bean.truefalse2}">
.
.
</h:panelGroup
<h:panelGroup styleClass="panelGroup"
id="createForm" rendered="#{bean.truefalse3}">
.
.
</h:panelGroup>
Run Code Online (Sandbox Code Playgroud)
在搜索页面中,我将这些创建和更新面板设置为false并仅显示结果集.单击结果集中的行后,我将显示updateForm面板,但将create panel保持为false.
但问题是,如果存在验证错误,则从搜索页面设置的属性将丢失,并显示所有面板.
如何获取之前从搜索页面设置的值(布尔值true或false),因为我没有导航到不同的页面.
我在第二个类中有boolean属性的getter和setter.我甚至尝试保留隐藏字段(即从搜索页面设置的布尔属性).在验证错误后,不应恢复所有提交的值.或者只是我们在表单中输入的那些.
什么是最好的解决方案?
任何帮助都非常感谢!!!
如何使用SEVERITY获取所有消息仅为ERROR.我试过了:
Iterator<FacesMessage> messages = facesContext.getMessages(clientId);
while (messages.hasNext()){
if(messages.next().getSeverity().toString()=="ERROR 2")System.out.println(messages);
}
Run Code Online (Sandbox Code Playgroud)
这是对的吗?它不会拦截ERROR严重性的消息.
任何帮助将受到高度赞赏.
java ×5
jsf ×3
adobe-reader ×1
command-line ×1
encryption ×1
excel ×1
excel-vba ×1
javascript ×1
log4j ×1
messages ×1
session ×1
ssh ×1
sshj ×1
vba ×1