我需要知道使用PostgreSQL而不是Derby是否可以自动创建表.
故事:我成功地使用Hibernate和Derby建立了一个NetBeans Java项目.我已经从我的实体类创建了JPA控制器类.为了测试项目,我为这些控制器类创建了JUnit测试类.
首次运行这些测试类时,将在Derby中自动创建表.执行测试后,我可以在数据库浏览器中看到这些表.
在persistence.xml中有一行这样的行
<property name="hibernate.connection.url" value="jdbc:derby://localhost:1527/MySampleDb;create=true"/>
Run Code Online (Sandbox Code Playgroud)
设置连接并在需要时指示要创建的表(请注意行末尾的"; create = true").
使用PostgreSQL而不是Derby时.这不再起作用了.添加"; create = true"会破坏代码.这种自动表创建是否可以与PostgreSQL一起使用?我应该使用除Hibernate之外的其他持久性库吗?
我正在使用servlet来使用J2ME,但每当运行这个时都会收到以下错误消息.
错误:
java.sql.SQLException:[Microsoft] [ODBC SQL Server驱动程序] [SQL Server]第1行:'password'附近的语法不正确.)
public class GetNpostServlet extends HttpServlet
{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
// Same code appears in doPost()
// Shown both places to emphasize that data is received thru
// different means (environment variable vs stream),
// yet processed the same inside the servlet
String acct = req.getParameter("account"),
pwd = req.getParameter("password");
String balance = accountLookup(acct, pwd);
if (balance == null)
{
res.sendError(HttpServletResponse.SC_BAD_REQUEST,
"Unable to locate account.");
return; …Run Code Online (Sandbox Code Playgroud) 我正在使用Eclipse调试在JBoss 6上运行的java Web应用程序.我不是远程调试.当我尝试检查任何变量(字符串等)的值时,我收到消息"类型javax.el.ELResolver无法解析.它是从所需的.class文件间接引用的".
奇怪的是,问题只发生在检查变量时.应用程序本身似乎没有错过任何类.
如何使检查变量值再次起作用?
我正在尝试扫描我的webapplication类路径以查找所有涉及某些界面的类.
我当前的应用程序在独立版本中运行良好,但在Web环境中失败.
这是我的代码的一部分
public String[] getClassPathRoots() {
String classPath;
classPath = System.getProperty("java.class.path");
}
String[] pathElements = classPath.split(File.pathSeparator);
return pathElements;
}
Run Code Online (Sandbox Code Playgroud)
我不知道如何java.class.path在我的应用程序中使用,所以我应该能够获得类路径根.
我正在尝试使用Java 7和Tomcat 7构建JSF/Hibernate应用程序.我已经安装了Java SDK和JavaEE SDK,并将javaee.jar和javaee-api-6.jar复制到我的Tomcat LIB文件夹中.通过我对这篇文章和这篇文章的理解,我应该拥有我需要的所有罐子,据我所知,我在这个文件夹中没有其他罐子,这些罐子有相互冲突的资源.
javaee.jar文件包含看起来像Maven pom文件的内容,没有别的.我不确定它的价值是什么.
我的javaee-api-6 jar大小约为950k,包含了我期望的所有.class文件.我正在使用的代码编译得很好,我只在尝试部署到Tomcat时看到错误.这些罐子来自玻璃鱼装置.奇怪的是文件ServletException.class文件只有366个字节.
我在Eclipse中设置了Tomcat,以便IDE在部署时"接管"Tomcat,而不是部署到某个插件文件夹(默认行为).
我正在使用的唯一相关包是来自javax.persistence的'Entity''Id'和'GeneratedValue'.
我只尝试使用javaee-api-6.jar,并更名javaee-api.jar并javaee.jar没有变化.看起来它的文件名并不重要.
对Glassfish lib文件夹的深入检查确实显示了许多相关外观的jar,但不是完整的javaee包,所以我无法将Javaee-api-6.jar移出并移动它们,它们是不完整的,我得到了一个类似的错误表明(我假设)某些类的实现无法找到.
所以我的问题是:我需要在Tomcat 7中包含什么才能使javax.persistence正常工作?
java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/servlet/ServletException
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.getDeclaredMethods0(Native …Run Code Online (Sandbox Code Playgroud) 我是Java EE的新手.我有一个网站,要求用户登录,并在用户登录后,我希望用户看到他/她自己的项目(例如:购物车).
所以这意味着我必须使用一个会话来完成它.但是我该如何处理多个会话?
例如,多个用户登录到系统以及同一个servlet?但是,我可以在一个servlet中保留多个会话吗?我是否记录下每一个?它是如何工作的?
有人可以举个例子吗?
当我在jboss-5.1.0.GA-jdk6中发布我的模块时,我收到此错误.我已经阅读了谷歌上的所有解决方案以及stackoverflow,但没有得到正确的解决方案.
以下是我项目目录中的context.xml文件META-INF:
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/poll"/>
<Resource name="jdbc/PollDatasource" auth="Container" type="javax.sql.DataSource"
driverClassName="org.apache.derby.jdbc.ClientDriver"
url="jdbc:derby://localhost:1527/poll database;create=true"
username="suhail" password="suhail"
maxActive="20" maxIdle="10" maxWait="-1" />
Run Code Online (Sandbox Code Playgroud)
但是当我尝试部署/运行项目时,netbeans会产生以下错误:
[Fatal Error] :4:2: The markup in the document following the root element must be
well-formed.
W:\UnderTest\NetbeansCurrent\poll\nbproject\build-impl.xml:721: Deployment error:
Tomcat configuration file
W:\UnderTest\NetbeansCurrent\poll\web\META-INF\context.xml seems to be broken.
Please make sure it is parseable and valid.
See the server log for details.
Run Code Online (Sandbox Code Playgroud)
为什么我会收到此错误?我在中添加了数据库信息context.xml.

通过Spring JDBC Template处理不同数据库(Oracle,MSSql,MySql)的正确方法是什么?我需要为分页实现特定的db查询.需要我使用的东西:
if (Oracle){
opacle specific query
}
if (MSSql){
MSSql specific query
}
Run Code Online (Sandbox Code Playgroud)
或者有更好的方法吗?
我有问题重定向到jsp.我把我的servlet代码放在下面.而且我也把错误日志.任何人都可以帮我解决问题.如果您需要进一步的细节,请在下面评论.我在其他servlet中做了同样的工作.
public class DoctorServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String sDocId=request.getParameter("doctorId");
Integer dId=Integer.parseInt(sDocId);
String speciality=request.getParameter("speciality");
String experience=request.getParameter("experience");
String qualification=request.getParameter("qualification");
String sempId=request.getParameter("employeeId");
Integer empId=Integer.parseInt(sempId);
String action=request.getParameter("method");
Doctors d=new Doctors();
if(action.equalsIgnoreCase("add")){
d.setDocId(dId);
d.setEmpId(empId);
d.setExp(experience);
d.setSumOfQn(qualification);
d.setSpeciality(speciality);
try {
boolean result=new Doctors().insertDoctor(d);
if(result==true){
request.setAttribute("add","sucess");
}
request.getRequestDispatcher("doctor_result.jsp").forward(request, response);
response.sendRedirect("doctor_result.jsp");
} catch (SQLException ex) {
Logger.getLogger(DoctorServlet.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
Aug 23, 2012 12:29:50 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [DoctorServlet] in context …Run Code Online (Sandbox Code Playgroud)