Одно из моих приложений предназначено для чтения (и только чтения) файлов, которые могут использоваться.
Но при чтении файла, который уже открыт, например, в Microsoft Word, это приложение выдает исключение System.IO.IOException
:
Процесс не может получить доступ к файлу '<имя файла здесь>' потому что он используется другим процессом.
Для чтения файла используется следующий код:
using (Stream stream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite | FileShare.Delete))
{
// Do stuff here.
}
Конечно, поскольку файл уже используется, ожидается это исключение.
Теперь, @Path ("/ тест") открытый класс TestSessionBean {@GET @Produces ("application / xml") public String getTest () {...
В J2EE 6 вы можете предоставить свой EJB-компонент сеанса как веб-службу REST, как показано ниже
@Stateless
@Path("/test")
public class TestSessionBean {
@GET
@Produces("application/xml")
public String getTest() {
return "<?xml version='1.0' encoding='UTF-8'?><val>test session bean</val>";
}
}
Это работает, когда Я упаковал EJB в .war, однако, когда я пытаюсь упаковать свой проект в отдельные модули web и ejb внутри EAR, я получаю ошибку HTML 404 not found.
Кто-нибудь, пожалуйста, объясните?
Я с использованием Glassfish v3
Вот мой web.xml
<servlet>
<servlet-name>TaskRestService</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>TaskRestService</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>