更新:我现在已经正确实现了这一点.有关更多信息,请参阅我的博客文章.
我正在尝试使用AppFabric和NHibernate作为我的二级缓存提供程序,但是我收到以下错误:ErrorCode:Initialization:无法联系缓存服务.有可能的原因,请联系管理员并参阅产品帮助文档.
我认为问题出在我在web.config中的配置:
<section name="dcacheClient"
type="Microsoft.ApplicationServer.Caching.DataCacheClientSection, Microsoft.ApplicationServer.Caching.Core"
allowLocation="true"
allowDefinition="Everywhere"/>
...
<dcacheClient deployment="routing" localCache="False">
<localCache isEnabled="false" sync="TimeoutBased" ttlValue="300" />
<hosts>
<host name="localhost" cachePort="22233" cacheHostName="AppFabricCachingService" />
</hosts>
</dcacheClient>
Run Code Online (Sandbox Code Playgroud)
我已经下载了NHibernate.Caches源代码,试图找出问题所在,并在调用GetCache方法时在VelocityClient构造函数中抛出异常:
public VelocityClient(string regionName, IDictionary<string, string> properties)
{
region = regionName.GetHashCode().ToString(); //because the region name length is limited
var cacheCluster = new CacheFactory();
cache = cacheCluster.GetCache(CacheName);
try
{
cache.CreateRegion(region, true);
}
catch (CacheException) {}
}
Run Code Online (Sandbox Code Playgroud)
如果我将一个监视添加到cacheCluster变量,我可以找到一个_servers私有变量,它有一个System.Data.Caching.EndpointID,其MyURI属性设置为net.tcp:// localhost:22234/AppFabricCachingServive,我认为它已经来了来自web.config中的配置.
如果您不知道问题的确切原因,但对如何解决此问题有一些想法,那也将非常感激.
附加信息
我从命令中得到以下结果Get-CacheHostConfig -HostName tn-staylor-02 -CachePort 22233
:
HostName : tn-staylor-02
ClusterPort …
Run Code Online (Sandbox Code Playgroud) 我有一个Maven项目我正在尝试在Eclipse中构建/运行但我收到的错误如下.如何执行错误建议并添加-e或X开关以尝试对此进行故障排除?
[ERROR] Failed to execute goal org.bsc.maven:maven-processor-plugin:2.0.5:process (process) on project glw-crm: Error executing: NullPointerException -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Run Code Online (Sandbox Code Playgroud)
我正在使用Eclipse Indigo(64位)和m2e 1.0.1
我有一个工作角色,在开发中完美运行但在部署时不起作用."不起作用"是相当模糊的,但这真的是我必须继续,因为我没有看到任何错误或任何事情(事件日志中无论如何 - 也许还有其他地方我可以看).我在我的代码中添加了一些跟踪语句,我看到第一个出现了,但没有其他的.
WorkerRole代码:
public class WorkerRole : RoleEntryPoint
{
#region Member variables
private IWindsorContainer _container;
private IJob[] _jobs;
#endregion
#region Methods
public override bool OnStart()
{
ConfigureDiagnostics();
Trace.WriteLine("WorkerRole.OnStart()");
try
{
Initialize();
Trace.WriteLine("Resolving jobs...");
_jobs = _container.ResolveAll<IJob>();
StartJobs();
return base.OnStart();
}
catch (Exception ex)
{
TraceUtil.TraceException(ex);
throw;
}
finally
{
Trace.WriteLine("WorkerRole.OnStart - Complete");
Trace.Flush();
}
}
/// <summary>
/// Sets up diagnostics.
/// </summary>
private void ConfigureDiagnostics()
{
DiagnosticMonitorConfiguration dmc =
DiagnosticMonitor.GetDefaultInitialConfiguration();
dmc.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(1);
dmc.Logs.ScheduledTransferLogLevelFilter = LogLevel.Verbose;
DiagnosticMonitor.Start(Constants.DiagnosticsConnectionString, dmc); …
Run Code Online (Sandbox Code Playgroud) 我花了一整天谷歌搜索并在这里查看各种问题,试图找到实现身份验证和授权的最佳解决方案.我现在想出部分解决方案,但我希望有人可以填补空白.我知道下面有很多文字,但请耐心等待:O)
背景
我继承了一部分已完成的CRM应用程序,该应用程序目前使用JSF 2.0,JavaEE 6,JPA和PostgreSQL数据库.不幸的是,最初以他们无限的智慧开始构建这个Web应用程序的人决定最好将身份验证/授权留到最后 - 我现在必须把它放进去.
该应用程序基本上分为三层 - 视图,托管bean和DAO.这意味着托管bean特别"胖",因为它们包含所有业务逻辑,验证和导航逻辑.
身份验证/授权要求
我在哪里
我计划做的第一件事是使用JAAS和Servlet 3.0 Login示例来遵循此用户身份验证和授权.我认为这将满足我的前3个要求.
为了在页面上显示/隐藏保存按钮等,我可以使用本SO答案中描述的技术.这将部分解决需求4,但我认为我仍然需要保护动作方法和托管bean本身.例如,我希望能够在customer bean上的save()方法中添加注释或内容,以确保只有具有"客户服务"角色的用户才能调用它 - 这就是我开始遇到问题的地方.
我想一个选择是做一些类似于我在视图中建议做的事情,并使用facesContext来检查当前用户是否"在角色中".我并不热衷于此,因为它会使我的代码混乱而宁愿使用注释.但是,如果我确实沿着这条路走下去,我将如何返回http 403状态?
javax.annotation.security.*注释似乎非常适合对应用程序区域进行明确定义访问,但据我所知,它们只能添加到EJB中.这意味着我需要将我的所有业务逻辑从目前驻留在新EJB的托管bean中移出.我认为这可以带来额外的好处,即将业务逻辑分成它自己的一组类(代理,服务或你选择调用它们的任何东西).这将是一个相当大的重构,但是由于缺乏单元测试或集成测试而无法帮助.我不确定访问控制的责任是否应该在这个新的服务级别 - 我认为它应该在托管bean上.
其他选择
在我的研究中,我发现很多人都提到了Spring和Seam等框架.我对Seam的经验有限,我觉得这个项目非常适合这个项目,而且我记得我相信它解决了我所拥有的授权问题,但我认为现在推出这个问题为时已晚.
我也见过Shiro在不同的地方提到过.看了10分钟的教程后,这似乎很合适,特别是与Deluan Quintao的taglib一起使用,但我一直无法找到任何教程或如何将它与JSF Web应用程序集成的示例.
我经常遇到的另一种选择是实施定制解决方案 - 这对我来说似乎很疯狂!
摘要
总而言之,我真的想要一些关于我是否在实现身份验证和授权方面走上正确道路的指导,以及我如何填写保护个别方法和/或托管bean(或至少是他们委托的代码)和/或我如何手动返回HTTP状态403.
我正在使用SQLServer 2008,如果我执行以下查询:
SELECT
*
FROM
FREETEXTTABLE(SomeTable, Name, 'a name that I know exists')
Run Code Online (Sandbox Code Playgroud)
我得到了我期望的行,但等级总是为0.
在寻找这个问题的解决方案时,我在Microsoft ASP.NET论坛上发现了这个问题,如果我添加:
ALTER FULLTEXT CATALOG MyCatalog REBUILD
Run Code Online (Sandbox Code Playgroud)
我开始获得排名 - 但只是暂时的.
我不想每次进行搜索时都要重建我的目录,特别是当我在数据库中有大量数据时,如果我在查询之前直接将它添加到我的Sproc中,我的查询无论如何都不会返回结果,大概是因为目录已完成重建.似乎有其他人有这个和类似的问题,但我一直无法找到解决方案.有任何想法吗?
我正在建立一个有愿望清单的网站.我想将愿望清单存储在天蓝色的表存储中,但也希望用户能够在查看时对其愿望清单进行排序,有多种不同的方式 - 添加日期,添加日期,项目名称等.我还想实现分页,我相信我可以通过使用延续令牌来实现.
据我了解,"order by"未实现,结果从表存储返回的顺序基于分区键和行键.因此,如果我想实现我描述的分页和排序,通过使用不同的分区键/行键多次存储愿望清单来实现这一点是最好的方法吗?
在这个简单的情况下,愿望列表可能不会那么大,我实际上可以限制可以出现在列表中的最大项目数,然后摆脱内存中的分页和排序.但是,我有更复杂的情况,我还需要实现分页和排序.
我在这里抓着一点稻草,但是想知道是否有人对这是否可能有任何见解.似乎亚马逊没有提供任何类型的[公共] API来获取有关用户点燃书籍的数据,特别是他们已经阅读了多少,但我希望我错过了一些东西.
所以基本上,鉴于用户亚马逊登录或点燃电子邮件地址或其他一些独特的标识符,我希望能够连接到Web服务以获取用户购买/下载的kindle书列表,然后确定通过它们的距离他们读过.亚马逊必须拥有这些数据才能跨设备同步图书,但似乎他们没有提供API来获取这些数据.
我正在尝试创建一个Mozilla浏览器插件,其唯一目的是使用javascript检测是否安装了我编写的应用程序.这是受到另一个类似主题的stackoverflow问题和答案的启发.
我想要的只是一个HelloWorld类型的例子,因为我需要编写的内容比这更简单.Mozilla网站上有很多信息,但作为插件菜鸟和C++新手,我遇到了信息过载.我只需要一步一步"这是如何创建你的第一个简单的插件".
我已经按照这个 ATL教程编写了IE等价物.这是我希望找到的那种指导级别.
请注意,这是关于Mozilla插件而不是扩展 - 谷歌搜索这个主题提供了除插件之外的大量扩展信息.
12个月前,我开发了一款应用程序商店拒绝的iPhone应用程序.我最近提出了一个解决方案,以解决该应用被拒绝的原因,并计划重新提交.我刚刚发现一个应用程序在不到一个月前发布,其名称我将用于我的应用程序.有什么方法可以反对吗?我不仅提交<我的iPhone应用程序名称>,而且还拥有域名www.<我的iPhone应用程序名称> .com和www.<我的iPhone应用程序名称> .co.uk.
这里有几个类似的问题,建议对您的应用名称进行商标设置,以防止这种情况发生,并有效地在应用商店中保留应用名称.我特别想知道是否有某种方式反对别人的名字.
编辑:我不是在寻找是否能够阻止其他人使用我的应用程序名称的意见.我想知道是否有办法联系苹果这件事