Tag: java ee

强制AXIS客户端使用TLS

如何强制SOAP Axis客户端使用TLS而不是SSL? 我有这个代码: SOAPMessage soapMessage = MessageFactory.newInstance() .createMessage(); SOAPPart soapPart = soapMessage.getSOAPPart(); javax.xml.soap.SOAPEnvelope soapEnvelope = soapPart.getEnvelope(); Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress(new java.net.URL(endpoint)); call.setOperationStyle(org.apache.axis.constants.Style.DOCUMENT); call.setSOAPActionURI(“urn:processDocument”); call.setUsername(user); call.setPassword(password); call.setTimeout(10000); call.invoke(new Message(soapEnvelope.toString())); 执行错误是: javax.net.ssl.SSLException: Received fatal alert: unexpected_message at org.apache.axis.AxisFault.makeFault(AxisFault.java:101) at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:154) at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165) at org.apache.axis.client.Call.invokeEngine(Call.java:2784) […]

在Java EE中与EJB交互的最佳方式

我有一个中等规模的Java EE 6项目,它使用多个EJB,其中一个目的是通过JPA管理数据库调用。 我的问题是添加一个新类的最佳方法是什么,该类执行一些随机的function,然后调用数据库访问EJB来保存此类中的数据。 如果需要访问注释和注入,这个新类必须是EJB吗? 如果必须与项目的其余部分一起部署,它是否必须是EJB? 有人告诉我,如果你想为项目添加一个新的逻辑类,它必须是一个EJB,或者你可以使用JNDI远程集成它来访问EJB元素并创建某种客户端接口。 现在我的新类只是一个POJO但它无法访问EJBfunction。 一般我该怎么办? 编辑:请注意我的问题不是数据库访问。 这只是我正在使用的一个例子。 我的猜测更广泛。 我想知道如何从我创建的其他类访问EJB方法。 从一个EJB到另一个EJB,您可以简单地注入另一个EJB,因为它们都是容器管理的。 但是说我在与EJB相同的包中创建另一个类如何才能访问这些方法? 可能吗? 这里的最佳做法是什么? 现在我有一个类从URL获取twitter feed数据,然后解析JSON并返回前10个条目的字符串。 我想调用管理数据库访问的EJB并将该字符串传递给相应的方法,但我不能这样做,因为我的类也不是EJB。

如何使用Netbeans 7.1配置glassfish 3.1安全文件领域?

我试图在本教程后面的glassfish 3.1中配置一个简单的文件域: 我做了一切,因为它说但不起作用,当我前往管理页面时,我没有看到弹出消息要求凭据。 这就是我做的: 1-创建文件域: 2-然后我使用manage users按钮创建了一个用户 3-I使用图形界面而不是编辑器创建了glassfish-web.xml文件 4 – 然后以同样的方式配置web.xml 对不起,如果最后一张图片有点难以看到,你可以放大。 当我使用URL前往/admin.xhtml时,没有什么能阻止我查看页面内容,这意味着没有正确配置。 我不知道我错过了什么。 有人可以试着找出我不能让这个简单的安全任务工作的原因吗? 更新 这是我的web.xml源码 javax.faces.PROJECT_STAGE Development Faces Servlet javax.faces.webapp.FacesServlet 1 Faces Servlet /faces/* 30 faces/index.xhtml Constraint1 allowed /admin.xhtml administrator BASIC file administrator 还有glassfish-web.xml源码 administrator admin Keep a copy of the generated servlet class’ java code. 基本上我想要做的是拥有两种类型的用户。 刚浏览index.xhtml并且根本没有凭据的客户以及将凭据存储在文件中并且在转到admin.xhtml时被要求提供凭据的管理员 我不明白缺少什么。 我是否需要为访客用户创建特殊权限,说他们可以查看index.xhtml?

在什么情况下Java性能会随着内存的增加而降低?

我们正在DEV环境中加载测试Java 1.6应用程序。 JVM堆分配为2Gb,-Xms2048m -Xmx2048m。 在负载测试下,应用程序运行平稳,从不使用超过1.25Gb的堆,垃圾收集完全正常。 在我们的UAT环境中,我们使用相同的参数运行负载测试,唯一的区别是JVM,它分配了4Gb,-Xms4096m -Xmx4096m,否则,硬件与DEV完全相同。 但是在负载测试期间,性能非常糟糕,应用程序几乎吞噬了整个堆,并且垃圾收集运行猖獗。 我们一遍又一遍地运行这些测试,消除了可能影响性能的所有可能症状,但结果是一样的。 在什么情况下可以这样呢?

在eclipse java项目中加载dll文件

我正在尝试将文件sqljdbc_auth.dll添加到项目库中。 我将包含dll的文件夹添加为外部类文件夹。 在这里,我基本上尝试使用Microsoft提供的SQL驱动程序连接到我的SQL SERVER 2008数据库。 我的代码是 private static void Connect(){ try { Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”); String connectionUrl = “jdbc:hostname:1433;databaseName=dbname;” + “user=username;password=password”; java.sql.Connection con = DriverManager.getConnection(connectionUrl); } catch(ClassNotFoundException e) { e.printStackTrace(); } catch(SQLException e2) { e2.printStackTrace(); } }` 我收到以下错误 WARNING: Failed to load the sqljdbc_auth.dll cause : no sqljdbc_auth in java.library.path com.microsoft.sqlserver.jdbc.SQLServerException: This driver is not configured for […]

是否可以使用密码腌制的容器管理身份validation?

我知道如何设置使用表单身份validation并使用消化密码(例如,SHA-256)的vanilla容器管理安全性。 像这样的东西: web.xml中 FORM jdbc /login.jsf /login-error.jsf login.xhtml Username: Password: Submit 非常简单 – 但我真正希望能够做的是用全局盐和用户名加密密码。 是的,我知道这不是理想的,但现在,我只是在构建一个概念validation。 容器(GlassFish 3,在这种情况下)可以为我做这个,还是我必须编写自己的登录filter ? 我之前已经完成了(对于J2EE应用程序),但我的直觉告诉我,现在我必须采用更紧凑的方式来使用Java EE 6。

HibernateDaoSupport在hibernate 4.0中

我是jsf 2.0 spring 3.1和hibernate 4.1集成的新手。 我如何更改以下代码,因为hibernate 4.0不包含HibernateDaoSupport。 import org.springframework.orm.hibernate3.support.HibernateDaoSupport; public class CustomerDaoImpl extends HibernateDaoSupport implements CustomerDao{ public void addCustomer(Customer customer){ customer.setCreatedDate(new Date()); getHibernateTemplate().save(customer); } public List findAllCustomer(){ return getHibernateTemplate().find(“from Customer”); } } 我正在尝试这个样本: http : //www.mkyong.com/jsf2/jsf-2-0-spring-hibernate-integration-example/

video使用HTML 5和servlet

下面给出的代码用于video流。 这对于IE9和Firefox来说很不错,但Chrome和Mac Safari不行。 import java.io.*; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class VideoStreamServlet */ public class VideoStreamServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * Default constructor. */ public VideoStreamServlet() { // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ […]

如何在Eclipse Java Dynamic Web Project中使用.properties文件?

我正在Eclipse中开发一个Dynamic Web Project。 我为商店数据库详细信息(用户名,密码等)创建了一个.properties文件。 我通过右键单击项目和New – > File添加了它。 我使用了Java util包Properties类。 但它不起作用。 我无法从文件中检索任何属性。 这是我使用的代码, Properties prop = new Properties(); try { prop.load(new FileInputStream(“database.properties”)); String db = prop.getProperty(“database”); String userName = prop.getProperty(“dbuser”); String password = prop.getProperty(“dbpassword”); } catch (IOException ex) { ex.printStackTrace(); } 有什么不对或有什么特别的地方我应该放置属性文件。

Eclipse中的Java资源文件夹错误

我正在eclipse中引入一个spring maven项目(helios with maven plugin)我在终端中构建了项目,一切正常,eclipse在xml或java类中没有显示错误,但它仍然在Java Resources Folder上显示错误标记,不明白为什么? 有任何想法吗 ?