小编ars*_*vis的帖子

模式匹配重叠 - 运算符上的模式匹配

我遇到过一种我想在运营商上进行模式匹配的情况.但是,这会Pattern match(es) are overlapped导致GHC出错.我无法弄清楚为什么.不允许运营商进行模式匹配吗?我假设因为括号中的运算符符号将其转换为标识符,所以这应该有效.

test :: (Integer -> Integer -> Integer) -> String
test (+) = "plus"
test (-) = "minus"
test _ = "other"
Run Code Online (Sandbox Code Playgroud)

还有其他方法可以完成我想要做的事情.我只是好奇为什么这不起作用.

haskell pattern-matching

6
推荐指数
1
解决办法
429
查看次数

在(引用)Web项目中找不到引用的EJB项目的类

我正在学习J2EE和EJB,我遇到了一个奇怪的问题.这是我的项目设置:

我正在使用Glassfish 3.1和Eclipse 3.7.我在Eclipse中有两个项目:

  1. 符合EJB 3.0的项目, myEjbProject
  2. 动态Web项目, myWebProject

我注入一个EJB会话bean mySessionBeanPackage.mySessionBeanmyEjbProject成servlet myServletPackage.myServletmyWebProject,然后(在servlet)调用会话bean定义的简单方法.

我已经提供myWebProject了一个引用myEjbProject(使用Properties - > Project References对话框).但是,由于某种原因,服务器无法找到会话bean.我得到的确切错误是:

严重:未找到类[LmySessionBeanPackage/mySessionBean].加载[class myServletPackage.myServlet]时出错

请注意,这两个 EJB项目和Web项目已发布到服务器,我已经反复检查为bean生成的类文件,其实存在于服务器上(所以我不能想出一个理由为什么服务器无法找到它们).

谁能告诉我我做错了什么?

我也试过了

  • 将classes文件夹myEjbProject显式添加到Java Build Path - > Libraries列表中myWebProject.这是项目参考的补充(虽然我认为首先添加项目参考应该已经足够了).无论如何,它没有任何区别(与以前相同的错误信息).

  • myEjbProject使用Export - > EJB Jar File选项创建JAR文件(我现在不想编写Ant脚本).然后我把这个JAR放在Java Build Path - > Libraries部分myWebProject.这种方法也没有解决问题(与以前相同的错误信息).

  • 修改会话bean

    • 没有界面
    • 本地接口
    • 远程接口

    并相应地修改注射.例如,对于只有本地接口的bean,我使用了:

    @EJB mySessionBeanPackage.mySessionBeanLocal myBean

    这种方法也没有解决问题(与以前相同的错误信息).

  • myEjbProject完全废除并将会话bean添加到myWebProjectas myServletPackage.mySessionBean(与servlet相同的包).在这种情况下,我可以使用成功将会话bean注入servlet

    @EJB mySessionBeanPackage.mySessionBean myBean

  • 废除myEjbProject …

eclipse servlets ejb

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

标签 统计

eclipse ×1

ejb ×1

haskell ×1

pattern-matching ×1

servlets ×1