Вы использовали бы его в своем собственном классе, так как никакой встроенный класс не использует его.
Numpy использует его, как указано в документация . Некоторые примеры здесь .
В Вашем собственном классе, Вы использовали бы его как это:
>>> class TestEllipsis(object):
... def __getitem__(self, item):
... if item is Ellipsis:
... return "Returning all items"
... else:
... return "return %r items" % item
...
>>> x = TestEllipsis()
>>> print x[2]
return 2 items
>>> print x[...]
Returning all items
, Конечно, существует документация Python , и ссылка языка . Но те не очень полезны.
Я делаю так.
В EAR есть служба MyService, где я работаю с содержимым EAR:
import org.jboss.system.ServiceControllerMBean;
import org.jboss.system.ServiceMBeanSupport;
public class MyService extends ServiceMBeanSupport {
public void workWithEar()
{
ServiceControllerMBean serviceController = (ServiceControllerMBean) MBeanProxy.get(
ServiceControllerMBean.class,
ServiceControllerMBean.OBJECT_NAME, server);
// server is ServiceMBeanSupport member
ClassLoader cl = serviceController.getClass().getClassLoader();
String path = cl.getResource("META-INF/jboss-service.xml").getPath()
InputStream file = cl.getResourceAsStream("META-INF/jboss-service.xml");
}
}
Это довольно неудобно, но вы можете сделать это, запросив JBoss MainDeployer
MBean. MBean находится по адресу jboss.system: service = MainDeployer
и имеет операцию JMX listDeployments
. Это возвращает коллекцию объектов DeploymentInfo
, одним из которых будет ваше развертывание EAR. У этого DeploymentInfo есть свойство url
, которое представляет собой file: //
URL, описывающий ваш каталог развертывания.
Отлично, а? Для этого вы можете использовать необработанный JMX API, но Spring предоставляет гораздо более удобный механизм, используя MBeanProxyFactoryBean
для предоставления экземпляра MainDeployerMBean
.
Я хотел бы найти более простой способ, но это лучшее, что я нашел до сих пор.
Отображаются ли эти ресурсы или доступны ли они по веб-пути (в рамках WAR)?
Если да, вы можете попытаться использовать ServletContext.getRealPath ()
для преобразования виртуального пути в реальный / путь к файловой системе.