标签: jython

我如何处理Microsoft Outlook winmail.dat?还有其他惊喜吗?

我决定我真的不喜欢微软和他们的方式.能不能请您给我如何在邮件处理winmail.dat的方向,有一个Jython库或一个Java库,让我来处理这个问题.

香港专业教育学院刚刚完成了邮件处理程序,Jython编写的2.2.1上的Java 5.在最后的负载测试,我意识到,本来应该在一个标准的MIME电子邮件格式的附件在一些国家正现在很忙轰出winmail.dat的,这意味着许多不同的Outlook客户端使用此winmail.dat污染互联网,这意味着我需要支持winmail.dat.因此,我的程序无法正确处理数据.

请你简单介绍一下winmail.dat是什么以及为什么它会让我们烦恼.

还有什么惊喜可以预料到!?还有什么我需要注意的,到目前为止,标准的MIME电子邮件都可以满足.盒子里还有其他插孔吗?

非常感谢你的时间.

python java email jython winmail.dat

7
推荐指数
2
解决办法
3952
查看次数

为什么这么多人坚持将JVM拖入新的应用程序?

例如,我遇到了害怕Rails应用程序死亡的开发人员和架构师,但他喜欢编写新的Grails应用程序的想法.

从我所看到的,使用JVM来支持Groovy,JRuby和Jython等语言而不是直接的Ruby或Python有很多资源开销.

Ruby和Python都可以在任何操作系统上进行解释,因此我没有看到任何"一次写入运行"的优势......为什么要将笨重的JVM与你一起带来?

grails groovy jvm jython jruby

7
推荐指数
4
解决办法
1638
查看次数

CPython,IronPython,Jython脚本是否相互兼容?

我很确定python脚本可以在所有三个中运行,但我想确定.我已经在这里和那里阅读过可以编写CPython,Jython,IronPython的编辑,我希望我能够深入了解这一区别.

我的情况是我有3种不同的api,我想测试.每个api执行相同的功能代码,但它们在实现上是不同的.我正在为每种语言的api编写包装器.每个包装器都应该使用Boost :: python,Jython和IronPython向python公开完全相同的功能和实现.

我的问题是,使用这些公开的方法编写的python脚本(每种语言都很常见)是否适用于Python的所有三种"风格"?

就像我说的那样,我很确定答案是'当然',但我需要确保在花费太多时间进行研究之前.

python testing ironpython jython boost-python

7
推荐指数
1
解决办法
1104
查看次数

你如何使用python在jar文件中调用python脚本?

我正在开发一个散布一堆jython和java代码的应用程序.由于程序的性质(使用wsadmin),我们实际上仅限于Python 2.1

我们目前有一个包含java源和.py模块的jar.该代码目前使用java调用,但我想删除它,以支持尽可能多的功能迁移到jython.

我遇到的问题是我想从调用jython脚本导入或执行现有jar文件中的python模块.我尝试了几种不同的方法但没有成功.

我的目录结构如下:

application.jar
  |-- com
       |--example
            |-- action
                 |-- MyAction.class
                 |-- pre_myAction.py
Run Code Online (Sandbox Code Playgroud)

我试过的第一种方法是从罐子里进口.我将jar添加到我的sys.path并尝试使用import com.example.action.myAction 导入模块并导入myAction.但是,即使我将init .py文件放入每个级别的目录中也没有成功.

我尝试的第二种方法是使用java类加载资源.所以我写了下面的代码:

import sys
import os
import com.example.action.MyAction as MyAction

scriptName = str(MyAction.getResource('/com/example/action/myAction.py'))
scriptStr = MyAction.getResourceAsStream('/com/example/action/myAction.py')

try:
  print execfile(scriptStr) 
except:
  print "failed 1"

try:
  print execfile(scriptName) 
except:
  print "failed 2"
Run Code Online (Sandbox Code Playgroud)

这两个都失败了.关于我该如何继续,我现在有点不知所措.有任何想法吗 ?

干杯,

特雷弗

python java import jython jar

7
推荐指数
1
解决办法
3819
查看次数

使用Django-Jython和Tomcat进行部署?

我有一个Django应用程序,我们正在尝试使用django-jython部署到Tomcat服务器.

为了测试一下,我已成功为一个空的Django应用程序创建了WAR存档文件.测试Django应用程序称为"主席".

我们的Tomcat服务器显然不喜欢WAR归档文件,所以我爆炸(解压缩),并将这些文件复制到服务器.

网络服务器管理员为我创建了一个上下文,以及该上下文的目录(mediatracking).

我已将WAR存档中的文件复制到该目录中,我不太确定如何让该测试应用程序"运行"?

\mediatracking
 - application.py 
 - application$py.class 
 \WEB-INF 
   web.xml 
   \lib 
    - jruby-extras-fileservlet.jar 
    - jython.jar 
   \lib-python 
     - Lib.pth 
     - README 
     \chair 
     \django 
     \doj 
     \Lib 
Run Code Online (Sandbox Code Playgroud)

(我没有低于chair/django/doj/Lib目录中的那个.)

上面的目录结构中是否有任何明显的缺失?

我究竟如何让Tomcat服务器真正"运行"这个应用程序?如果你去上下文目录它不会自动运行(并且那里只有一个application.py和application $ py.class文件,所以我不确定它会如何).

我是否需要让我的网络服务器管理员对web.xml文件执行某些操作?我检查了一下,似乎没有任何东西可以帮助这个应用程序运行:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
  <display-name>chair</display-name>
  <description>
   chair through WSGI with modjy
  </description>
  <context-param>
    <param-name>files.prefix</param-name> <!-- Needed by fileservlet -->
    <param-value></param-value>
   </context-param>
  <servlet>
    <servlet-name>modjy</servlet-name>
    <servlet-class>com.xhaus.modjy.ModjyJServlet</servlet-class>
    <init-param>
      <param-name>reload_on_mod</param-name>
      <param-value>1</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet>
    <servlet-name>fileservlet</servlet-name>
    <servlet-class>org.jruby.webapp.FileServlet</servlet-class>
  </servlet>


  <servlet-mapping>
    <servlet-name>fileservlet</servlet-name>
    <url-pattern>/media/*</url-pattern>
  </servlet-mapping> …
Run Code Online (Sandbox Code Playgroud)

django tomcat jython

7
推荐指数
1
解决办法
6172
查看次数

如何在Jython项目中创建基于Sphinx的文档?

我正在使用Java编写的库来处理几个Jython项目.由于autodoc扩展,我想用Sphinx创建一些好的文档.但是当我尝试创建html时,我得到错误,因为autodoc找不到用Java编写的库:

sphinx-build -b html -d _build/doctrees   . _build/html
Running Sphinx v1.0.5
loading pickled environment... done
building [html]: targets for 1 source files that are out of date
updating environment: 0 added, 1 changed, 0 removed
reading sources... [100%] index

/Users/myName/myJythonProject/doc/index.rst:14: (WARNING/2) 
autodoc can't import/find module 'myJythonProject', it reported error: 
"global name 'PoolManager' is not defined",
please check your spelling and sys.path
Run Code Online (Sandbox Code Playgroud)

其中PoolManager是Java类.

任何人都可以帮我解决这个问题吗?

python java jython python-sphinx

7
推荐指数
1
解决办法
1869
查看次数

从Jython控制stdout/stderr

我在jython的java库中调用一个函数,它打印到stdout.我想从jython脚本中抑制此输出.我尝试使用像object(StringIO)这样的文件替换sys.stdout的python习惯用法,但这不会捕获java库的输出.我猜测sys.stdout不会影响java程序.在jython中是否有以编程方式重定向或抑制此输出的标准约定?如果不是我能以什

python java jython

7
推荐指数
1
解决办法
1910
查看次数

如何为Jython设置环境变量?

我已将变量设置为JYTHON_HOME我已安装Jython的目录和JYTHON_PATHbin文件夹,但是当我尝试运行jython时仍然出现以下错误:

'jython' is not recognized as an internal or external command,
operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

为什么我会收到此错误?Java安装没有问题.

java windows jython environment-variables

7
推荐指数
2
解决办法
1万
查看次数

从python中的类列表中随机选择x个项目

在jython中,我有一类像这样定义的对象:

class Item:
  def __init__(self, pid, aisle, bay, hits, qtyPerOrder):
    self.pid = pid
    self.aisle = int(aisle)
    self.bay = bay
    self.hits = int(hits)
    self.qtyPerOrder = int(qtyPerOrder)
Run Code Online (Sandbox Code Playgroud)

我创建了一个名为"list"的类列表,该类列表中的项目有4000~行,如下所示:

'PO78141', 13, ' B ', 40
Run Code Online (Sandbox Code Playgroud)

我试图随机选择一个范围为3和20的数字,称为x.然后,代码将在列表中选择x行.

例如:如果x = 5,我希望它返回:

'PO78141', 13, ' B ', 40
'MA14338', 13, ' B ', 40
'GO05143', 13, ' C ', 40
'SE162004', 13, ' F ', 40
'WA15001', 13, ' F ', 40
Run Code Online (Sandbox Code Playgroud)

编辑 好吧,这似乎工作.但是,它将返回此< main .Item对象0x029990D0>.我如何让它以上述格式返回?

python random jython class list

7
推荐指数
2
解决办法
8377
查看次数

仅使用默认库在jython中解码json

我有一个关于将json放入我的jy​​thon脚本的问题.这是我的情景:

  • 我正在我的笔记本电脑上运行python应用程序
  • 该应用程序需要与第三方云环境中托管环境中运行的jython应用程序共享数据.
  • 我无法将第三方模块添加到此环境中(因此我无法安装com.xhaus.jyson)
  • 这可能意味着我可能只限于java-org.json.JSONObject本机的功能

因此,有了这些限制,我想在我的笔记本电脑上使用字典对象,将其转换为json,将其传递给托管的jython应用程序,然后使用本机jython或java工具将其转换回该字典对象,以便我可以继续工作在我托管在云端的脚本中.

我已经知道如何在"常规" python中执行此操作.这很简单.导入json并疯狂.但我的java功夫很弱,我以前从未在jython工作过.

所以我试图弄清楚这是否可以使用jython底层的java可靠而轻松地做到这一点,或者如果我最好使用像ast这样的东西,只需将字典作为字符串文字发送.我真的更喜欢坚持使用json,因为人们喜欢json的所有正常原因,所以任何帮助利用java库来完成这项工作将不胜感激.

python java json jython

7
推荐指数
1
解决办法
7106
查看次数