我正在将基于 Weblogic 10c 构建的项目(使用 servlet / jsp / jdbc / jndi)迁移到 Apache Tomcat 7.0.22。我已经成功配置了 ldap 身份验证服务器,并替换了 weblogic 使用的 xxx-jdbc.xml。现在我的问题是我正在尝试迁移 web Content/WEB-INF 目录中找到的 weblogic.xml 文件。xml文件的内容如下:
<?xml version = '1.0' encoding = 'UTF-8'?>
<weblogic-web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-web-app http://www.bea.com/ns/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd"
xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app">
<security-role-assignment>
<role-name>REGISTERED_USER</role-name>
<principal-name>GROUP_NAME_FROM_LDAP</principal-name>
</security-role-assignment>
<session-descriptor>
<debug-enabled>false</debug-enabled>
<tracking-enabled>true</tracking-enabled>
<cookie-name>nameOfCookie</cookie-name>
<cookie-max-age-secs>-1</cookie-max-age-secs>
<url-rewriting-enabled>false</url-rewriting-enabled>
<encode-session-id-in-query-params>false</encode-session-id-in-query-params>
<sharing-enabled>false</sharing-enabled>
</session-descriptor>
<context-root>my_app_context_root</context-root>
<servlet-descriptor>
<servlet-name>FileDownload</servlet-name>
</servlet-descriptor>
</weblogic-web-app>
Run Code Online (Sandbox Code Playgroud)
从上到下,我有安全角色分配,它将 ldap 组中的用户映射为拥有 REGISTERED_USER。我认为标签会话描述符是自我解释的。然后是我的应用程序上下文根上下文根。然后是一些 servlet 定义,用于将 servlet 注册到 Weblogic(这也在 web.xml 中定义,我认为这不需要更多处理)。
那么在我的应用程序中迁移此 weblogic.xml 文件的最佳方法是什么?
我想检查 JavaScript 中的空值。
例如, test() 是可以返回 null 的函数。所以如果我想有效地测试空检查,我的方法应该是什么。
var a = test();
Run Code Online (Sandbox Code Playgroud)
其次是
if (a) {}
Run Code Online (Sandbox Code Playgroud)
或者
if (a !== null) {}
Run Code Online (Sandbox Code Playgroud)
? 因为if (a)将检查 null、undefined、false、0、NaN,当我们知道我们只能得到 null 值时,这可能不是最好的方法。
当我运行这个演示时,它调用 TestBean 的writeObject
私有方法
这怎么可能 ?
这是代码:
import java.io.FileOutputStream;
public class Test {
public static void main(String[] args) {
try {
TestBean testBean = test.new TestBean();
testBean.setSize(23);
testBean.setWidth(167);
FileOutputStream fos =
new FileOutputStream(new File("d:\\serial.txt"));
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(testBean);
oos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
class TestBean implements Serializable {
private static final long serialVersionUID = 1L;
private int size;
private int width;
public int getSize() {
return size;
}
public void setSize(int size) { …
Run Code Online (Sandbox Code Playgroud) 我在定制JDeveloper的代码编辑器时遇到了一个小问题.我希望能够更改IDE用来包装我的java代码的Gray行的位置.见下图.
我查看了首选项>代码编辑器选项和周围的任何地方,但没有找到可以改变它的选项.顺便问一下,这条灰线叫什么?
非常感谢
我有一个html页面.虽然我在chrome或Safari中获取页面,但文本框周围有一个黄色边框.
为了删除边框,我添加了
<style type="text/css">
input{
outline:none;
}
</style>
Run Code Online (Sandbox Code Playgroud)
边界已经消失.
但是当我在Mac机器(Chrome和Safari)中使用页面时,它仍然存在.任何人都知道如何在Mac中修复它?
我正在尝试编写一个程序,它将显示并能够使用JFrame窗口更新您的IP地址设置.我正在寻找纯粹在Windows上运行,所以我试图能够使用netsh windows命令来检索/设置细节.
windows命令:
netsh interface ip show config name="Local Area Connection" | Find "IP"
完全返回我想要的内容,但是我写的代码不能通过管道工作,只有当我写到"本地连接"部分时它才会起作用.
有没有办法使用管道功能只能返回IP地址?我读过你可以把这行作为字符串数组传递,即String [] cmd = netsh ........
package ipchanger;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class test {
private String CMD;
public void executecommand(String CMD) {
this.CMD = CMD;
try {
// Run whatever string we pass in as the command
Process process = Runtime.getRuntime().exec(CMD);
// Get input streams
BufferedReader stdInput = new BufferedReader(new InputStreamReader(process.getInputStream()));
BufferedReader stdError = new BufferedReader(new InputStreamReader(process.getErrorStream()));
// Read command standard output
String …
Run Code Online (Sandbox Code Playgroud) 我有一个ResultSet,我迭代,我创建一个像view(html)的报告.问题是有些列返回Long值(作为SQL中数学函数的结果).
有没有一种简单的方法可以通过DataType识别这个值?
让我们说我想做这样的事情
String x = rs.getString(1);
if(MyUtilClass.isOfTypeLong(x)){
//implement my bussiness logig
}
Run Code Online (Sandbox Code Playgroud)
我看过这篇文章你如何确定字符串中包含的数据类型?.如果现在没有更好的东西,我将继续使用regEx解决方案.
我的场景是这样的:
我有一个 Web 应用程序,用户写一条消息,附加一个文件并发送电子邮件。
我使用 JavaMail 发送这样的邮件,但我在将文件附加到消息时遇到问题(我的文件在会话中):
if (request.getSession().getAttribute("EMAIL_ATTACHMENT") != null) {
UploadFile file = (UploadFile) request.getSession().getAttribute("EMAIL_ATTACHMENT");
MimeBodyPart mbp1 = new MimeBodyPart();
mbp1.setContent(text, "text/html;charset=UTF-8");
MimeMultipart mp = new MimeMultipart();
mp.addBodyPart(mbp1);
MimeBodyPart mbp2 = new MimeBodyPart();
// attach the file to the message
MyMailAttachmentDataSource fds = new MyMailAttachmentDataSource(file);
mbp2.setDataHandler(new DataHandler(fds));
mbp2.setFileName(fds.getName());
mp.addBodyPart(mbp2);
msg.setContent(mp, "text/plain");
}
Run Code Online (Sandbox Code Playgroud)
MyMailAttachmentDataSource 的代码是这样的:
public class MyMailAttachmentDataSource implements DataSource{
private UploadFile file;
public MyMailAttachmentDataSource(UploadFile file){
this.file=file;
}
@Override
public InputStream getInputStream() throws IOException {
return file.getInpuStream();
}
@Override …
Run Code Online (Sandbox Code Playgroud) 我有这个html(小提琴):
<table>
<tr>
<td colspan="1" style="vertical-align:top"> <span class="" title="">Add new Comment:</span>
</td>
<td colspan="1" style="height:80px;vertical-align:top;">
text
<textarea id="" class="" style="height:52px;vetical-align:top;"></textarea>
Person:
<input id="" class="" type="text" value="" style="vetical-align:top;"/>
<button class="" style="width:90px;vetical-align:top;" onclick="">Insert</button>
</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
问题是我无法显示第二个td
垂直对齐顶部的内容.
我也看到了其他使用该属性的答案,display: table-cell;
但似乎没有用.
关于如何做到这一点的任何想法?
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
....
....
getServletContext().getRequestDispatcher("/output.jsp").forward(request, response);
}
Run Code Online (Sandbox Code Playgroud)
我不需要在末尾重定向到另一个JSP页面doPost
。我有一个字符串(平面文本),我需要像Servlet请求一样对其进行响应。我怎样才能做到这一点?