对于我的JavaWeb Start应用程序,我想限制它只能从指定的域运行。如何获取运行我的应用程序的URL?我尝试了这种方式:
final BasicService bs = (BasicService) ServiceManager.lookup("javax.jnlp.BasicService");
final URL codeBase = bs.getCodeBase();
它工作正常,并向我显示了起源,但仅当我的jnlp文件中的代码库参数为空时。当它被设置时,然后它会显示代码库的url,这是错误的(当我在其他服务器上托管libs时),因为我想要运行我的jnlp的url。例如,我从“www.jnlpdomain.com”运行我的jnlp,但代码库是“www.libdomain.com”-在这种情况下,我想知道第一个url。当我检查java控制台日志时,我可以看到以下内容:
JNLP Ref (absolute): www.jnlpdomain.com/my_jnlp_file.jnlp
.... (some few lines)
=====CODEBASE=====: www.libdomain.com (this line is printed by me with the bs.getCodeBase())
因此,我可以看到主机名正确地打印在日志的第一行中,从以下内容开始:
JNLP Ref (absolute): ....
如何在我的应用程序中进行验证?
查看JAR文件清单安全属性:代码库属性:
Codebase
属性用于将JAR文件的代码库限制为特定的域。使用此属性可防止有人出于恶意目的在其他网站上重新部署您的应用程序。
问题内容: 我们有以下课程 和这个 现在,我需要在运行时知道is是否为 。由于这是jpa自动处理的,因此我无法获取此值。 我们正在调用一个带有as参数的方法,我想避免使用它来检查它是什么类型。如果我可以做些类似的事情会更酷 问题答案: 您可以将鉴别符映射为只读属性:
我有一个应用程序,可以显示来自互联网的图片和视频。现在我正在实现一个“保存”功能,将图片/视频保存到外部或内部存储器中,无需再次下载。 对于图片,我只是用抓取绘图。我如何用Exoplayer2. x/PlayerView中当前缓冲的视频实现同样的效果?我没有找到一个函数。
问题内容: 这是我的代码:ExecutorImp扩展了AbstractExecutor,它提取了与实现者相同的执行逻辑(ExecutorImp是一种情况),当调用ExecutorImp的execute()方法时,它将在其父类型中调用该方法,但在父类型中调用该方法(AbstractExcutor )应该知道与实现者绑定的另一个类(在示例中,它是User类): 所以,我的代码有什么问题? 问题答案:
问题内容: 我有一个spring boot应用程序(使用嵌入式tomcat 7),并且已经设置好了,所以我可以有一个随机端口。服务器启动并在端口上运行后,我需要能够获取所选择的端口。 我不能使用,因为它是零。这是一条看似简单的信息,所以为什么不能从我的Java代码访问它呢?我该如何访问? 问题答案: 该解决方案并不像我想要的那样优雅,但是我可以使用它。阅读spring文档,我可以侦听Embedde
问题内容: 在运行时很容易获得方法, 但是在运行时 如何获得方法? 如以下示例 我们的类,其中包括我们的目标方法 具有主要方法的班级 问题答案: 您不能:该文件不包含注释。 一种“解决方案”是在构建程序时将Javadoc生成为HTML,并从类名和方法名构建URL。您还可以使用doclet API 以比HTML更合适的格式生成javadoc 。
问题内容: 在nodejs中,我使用__dirname。在Golang中这等效吗? 我在Google上搜索并找到了这篇文章http://andrewbrookins.com/tech/golang-get-directory-of- the-current-file/ 。他在哪里使用以下代码 但这是在Golang中做正确的方法还是惯用的方法吗? 问题答案: 应该这样做: