小编And*_*ndy的帖子

在JAR中加载属性文件?

当我的网络应用程序所依赖的其中一个罐试图从jar中加载属性文件时,我遇到了麻烦.这是jar中的代码.

static
{
    Properties props = new Properties();
    try 
    {
        props.load(ClassLoader.getSystemResourceAsStream("someProps.properties"));
    } catch (IOException e) 
    {
        e.printStackTrace();
    }
    someProperty = props.getProperty("someKey");
}
Run Code Online (Sandbox Code Playgroud)

属性文件位于Maven项目的"src/main/resources"目录中.当我在Eclipse中的junit测试中运行此代码时,它执行得很好.当项目使用Maven构建到jar中,并作为依赖项包含在我的Web应用程序中时,它无法找到属性文件.我知道属性文件位于依赖于jar的基本目录中,我不知道如何解决这个问题.

java resources maven-2 properties classloader

58
推荐指数
2
解决办法
11万
查看次数

我想,我需要一个简单的规则引擎?

我需要一些关于解决这个问题的最佳方法的建议.

我研究了DROOLS,Java Rule Engine和其他一些.所有这些都是强大的,并且对它们有好处.我不知道哪个(如果有的话)对我来说是最好的选择.

我有一个业务对象.(简化演示)

Person
     firstName:String
     lastName:String
     departMent:String
     hireDate:Date
Run Code Online (Sandbox Code Playgroud)

我需要在Web应用程序中编写一个编辑器,以便围绕这些字段构建复杂的规则.我需要支持复杂的嵌套AND/OR逻辑.我只需要基本的运算符,规则应该简单地评估为真或假.如果规则评估为true或false,则将分别执行一个操作.

例如,

firstName CONTAINS"value"AND(lastName EQUALS"input"OR department CONTAINS"input")

我曾想过,也许我应该编写自己的解析器并在我自己的代码中评估逻辑.我不知道该怎么做,任何建议或链接到阅读的东西将不胜感激.我可以研究一种特定的设计模式吗?

你会如何解决这个问题?关于规则引擎的一个保留意见是,它们可能过于复杂而不仅仅是一个简单的问题?

java rule-engine business-logic rules

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

是web服务还是Web服务?

是一个字还是两个字?

我主要是因为我想知道在Java命名中它是"webService"还是"webservice".

web-services terminology

18
推荐指数
3
解决办法
8744
查看次数

在Oracle嵌套表中查找特定的varchar

我是PL-SQL的新手,并且努力寻找明确的操作文档是嵌套表.请更正任何误用的术语等.

我有一个嵌套的表类型,我用它作为存储过程的参数.

CREATE OR REPLACE TYPE "STRARRAY" AS TABLE OF VARCHAR2 (255)
Run Code Online (Sandbox Code Playgroud)

在我的存储过程中,表被初始化并填充.假设我有一个VARCHAR2变量,如果嵌套表中存在varchar,我想知道true或false.

我试过了

strarray.exists('somevarchar')
Run Code Online (Sandbox Code Playgroud)

但我得到一个ORA-6502

除了迭代之外,还有更简单的方法吗?

FOR i IN strarray.FIRST..strarray.LAST
    LOOP
        IF strarray(i) = value THEN
            return 1;--found
        END IF;
    END LOOP;
Run Code Online (Sandbox Code Playgroud)

oracle plsql oracle10g

8
推荐指数
2
解决办法
7047
查看次数

调试maven而不会丢失MAVEN_OPTS变量

我想运行jetty:在调试模式下运行,并在环境变量中设置MAVEN_OPTS.但它接缝像硬编码MAVEN_OPTS.是否可以在命令行中设置MAVEN_OPTSmvn MAVEN_OPTS=...

谢谢.

java maven-2 maven

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

你能用POST代替GET进行struts2动作重定向吗?

<action name="actionA" class="com.company.Someaction">
 <result name="success" type="redirect-action">
  <param name="actionName">OtherActionparam>
  <param name="paramA">${someParams}</param>
  <param name="paramB">${someParams}</param>
  <param name="aBoatLoadOfOtherParams">${aBoatLoadOfOtherParams}</param>
 </result>
</action>
Run Code Online (Sandbox Code Playgroud)

在上面的动作映射中,我将从SomeAction重定向到OtherAction.我遇到了问题,因为不幸的是我需要在两个操作之间传递大量数据.IE7只允许GET请求像2k一样,当响应调用另一个动作的get请求时,当我刚刚超过该限制时它会爆炸.

我是否可以设置此重定向,最终将POST调用到其他操作?

post redirect struts action struts2

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

部署时出现Struts2错误:无法加载bean:type:class:com.opensymphony.xwork2.ObjectFactory

我正在创建一个基本的Struts2,Maven webApp,并在部署到Tomcat 6或Jetty时收到此错误.有没有人见过这个?

  2010-07-29 15:33:38.801::WARN:  failed struts2
    Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/C:/workspaces/test/test/target/work/webapp/WEB-INF/lib/struts2-core-2.1.8.1.jar!/struts-default.xml:29:72
     at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:208)
     at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:101)
     at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:131)
     at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
     at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
     at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
     at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
     at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
     at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:589)
     at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
     at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)
     at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510)
     at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
     at org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:110)
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
     at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
     at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
     at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
     at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
     at org.mortbay.jetty.Server.doStart(Server.java:222)
     at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)
     at org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
     at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:357)
     at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:293)
     at org.mortbay.jetty.plugin.Jetty6RunWar.execute(Jetty6RunWar.java:67)
     at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
     at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
     at …
Run Code Online (Sandbox Code Playgroud)

maven-2 struts2

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

除了一个servlet之外,还要将所有内容映射到Struts2?

我有一个Struts2(2.1.8.1)Web应用程序.我的web.xml看起来像,

  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>

  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
Run Code Online (Sandbox Code Playgroud)

这配置为将所有请求映射到struts过滤器.我想在我的Web应用程序中添加一个servlet.我想将具有特定url模式的所有请求发送到该servlet.我希望其他所有东西都能进入我的struts servlet.

我知道我只能将"*.action"映射到struts servlet,但我讨厌.action就在我所有URL的末尾.

java struts2 servlet-filters

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

您能为订单中的所有列指定一个方向吗?

是否可以按顺序为所有列提供方向一次?

select *
from my_table
order by name desc, type desc
Run Code Online (Sandbox Code Playgroud)

你能用"desc"一次写同样的东西吗?

也许类似的东西?(这不起作用)

select *
from my_table
order by (name, type) desc
Run Code Online (Sandbox Code Playgroud)

sql oracle sql-order-by oracle10g

6
推荐指数
2
解决办法
2523
查看次数

Null检查构造函数和服务方法?

这是我们的一个代码评论中的一个主题,我想要更多的意见.

假设我正在编写一个允许我将简单的Person对象插入数据库的服务.

public class Person
{
   private String name;
   ....
}
Run Code Online (Sandbox Code Playgroud)

我们有一个简单的VerifyNotNull方法抛出IllegalArgumentException.

你会采取哪种方式和原因.

选项1:

在Person对象的构造函数中验证不为null.

public Person(String name)
{
     VerifyNotNull(name);//throws illegal arg exception if name is null
     this.name = name;
}
Run Code Online (Sandbox Code Playgroud)


选项2:

允许Person用null构造,在addPerson调用时验证不为null.

public class PersonService
{
  public void addPerson(Person personToAdd)
  {
     VerifyNotNull(personToAdd.getName());//throws illegal arg exception
     //add code
  }
}
Run Code Online (Sandbox Code Playgroud)

我不喜欢在构造函数中抛出Exceptions的想法.对我来说选项2感觉正确,但我不知道如何解释或证明它.

在构造函数中抛出异常是否可以接受?

谢谢你的帮助!

java oop soa object

5
推荐指数
2
解决办法
2981
查看次数