• Eclipse RCP /Plugin移除Search对话框


    RCP:如何移除Search对话框中不需要的项

    2013-08-18 22:31 by Binhua Liu, 231 阅读, 0 评论, 收藏编辑

    前言

    很久没写文章了,准备写一系列关于Eclipse RCP /Plugin的文章。 这些文章都是trouble shooting性质的,不准备写的很细,当你碰到这样的问题,google到时,能帮你把问题解决了,这就ok了。另外有些问题我也是不求甚解的,哈。

    正文

    Search Dialog中可能出现一些你不需要的项,比如“Java Search”,这个项是org.eclipse.jdt.ui贡献的,如果你因为某些需要引用了这个包,比如我需要用到这个包中的org.eclipse.jdt.ui.action.MoveAction,用来在Project Explorer右键菜单添加Move。 那么“Java Search”就会被贡献到Search Dialog中,我们有两个办法去除这些不需要的项:

    1,在plugin.xml中添加org.eclipse.ui.activities扩展点来过滤。我读过源代码,通过activities应该是可以生效的,但是我没有成功,可能还是匹配符不对。贴出我的代码,只供参考:

    <extension 
           point="org.eclipse.ui.activities"> 
           <activity 
        id="com.balabala.JavaSearchPage" 
            name="DisableJavaSearch"></activity> 
        <activityPatternBinding 
              activityId="com.balabalaactivityPatternBinding1" 
              isEqualityPattern="true" 
              pattern="org.eclipse.jdt.ui/org.eclipse.jdt.ui.JavaSearchPage"> 
        </activityPatternBinding> 
    </extension>

    有兴趣的可以参考以下连接自己研究:

    http://stackoverflow.com/questions/11188145/how-to-remove-java-search-entry-from-search-group-icon-in-eclipse-pde-using-ac/13293606#13293606

    2,通过继承org.eclipse.search.internal.ui.SearchDialog来去除多余的项,重写createPageArea方法,把TabFolder中不需要的TabItem移除掉。

    CustomSearchDialog.java:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    protected Control createPageArea(Composite parent) {
        Control control = super.createPageArea(parent);
        Composite composite = (Composite)control;
        Control[] controls = composite.getChildren();
        for(Control c: controls)
        {
            if(c instanceof TabFolder)
            {
                TabFolder tabFolder =(TabFolder)c;
                for(int i=tabFolder.getItemCount()-1;i>=0;i--)
                {
                    TabItem item = tabFolder.getItem(i);
                    if(!item.getText().equals("File Search"))
                    {
                        item.dispose();
                    }
                }
            }
        }
        return control;
    }

    然后,需要继承org.eclipse.search.internal.ui.OpenSearchDialogAction, 重写run方法:

    CustomSearchDialogAction.java:

    1
    2
    3
    4
    5
    6
    7
    8
    public void run() {
        if (workbenchWindow.getActivePage() == null) {
            SearchPlugin.beep();
            return;
        }
        CustomSearchDialog dialog= new CustomSearchDialog(workbenchWindow, null);
        dialog.open();
    }

    最后在Menu和toolbar中调用CustomSearchDialogAction。

     

    Redhat Server 5.7 安装配置PHP

    2013-08-16 23:30 by 潇湘隐者, 248 阅读, 0 评论, 收藏编辑

    PHP的简介

           PHP于1994年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf 为了要维护个人网页而制作的一个简单的用Perl语言编写的程序。这些工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。后来又用C语言重新编写,包括可以访问数据库。他将这些程序和一些表单直译器整合起来,称为 PHP/FI。PHP/FI 可以和数据库连接,产生简单的动态网页程序.......[参考百科]

           PHP的官方网址:http://www.php.net/

    PHP安装配置

         首先去官网http://cn2.php.net/downloads.php下载最新版的安装包或你需要的版本,本次实验的系统环境为Red Hat Enterprise Linux Server release 5.7 64bit。这篇文章是安装配置nagios的过程

    Code Snippet
    1. [root@getlnx05 kerry]# tar zxvf php-5.4.10.tar.gz
    2.  
    3. [root@getlnx05 kerry]# cdphp-5.4.10
    4.  
    5. [root@getlnx05 php-5.4.10]#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs

     clip_image002

    报错详细信息:

    复制代码
     View Code
    复制代码

    报错“configure: error: xml2-config not found. Please check your libxml2 installation.”是因为缺少libxml2相关的包libxml2-devel, 如下所示,先检查已经安装了那些libxml2相关的包

    Code Snippet
    1. [root@getlnx05 php-5.4.10]#  rpm -qa |greplibxml2
    2.  
    3. libxml2-python-2.6.26-2.1.12
    4.  
    5. libxml2-2.6.26-2.1.12
    6.  
    7. libxml2-2.6.26-2.1.12

    clip_image004

    [root@getlnx05 php-5.4.10]# rpm -qa libxml2-devel

    [root@getlnx05 php-5.4.10]# yum install libxml2-devel

    clip_image006

    [root@getlnx05 php-5.4.10]#  ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs

    clip_image008

    [root@getlnx05 php-5.4.10]#make

    clip_image010

    [root@getlnx05 php-5.4.10]#make install

    clip_image012

    接下来配置Apache服务,关于Apache的安装,可以参考我的博客Linux系统安装Appach 2.4.6

    PHP环境配置

    Step 1: Apache环境配置

    首先找到Apache的配置文件配置文件/usr/local/apache/conf/httpd.conf (我Apache服务安装目录为/usr/local/apache)

    找到

    #User daemon

    #Group daemon

    修改为

    User nagios

    Group nagios

    另外找到ServerName www.example.com:80 ,在下面增加ServerName添加服务器的IP地址

    clip_image014

    另外找到下面配置,增加index.php

    <IfModule dir_module>

    DirectoryIndex index.html

    </IfModule>

    clip_image016

    接下来找到<IfModule mime_module>,在后面增加配置信息AddType application/x-httpd-php .php,如下所示

    clip_image018

    出于安全考虑,一般访问nagios的安全监控界面必须经过授权才能访问(不要那么,安装配置PHP是安装配置nagios的过程,如果大家只是为了安装配置PHP环境,完全可以跳过下面),这需要增加验证配置,即在httpd.conf 文件最后添加如下信息:

    clip_image020

    Step 2:创建apache目录验证文件

    [root@getlnx05 conf]#  /usr/local/apache/bin/htpasswd -c /usr/local/nagios/etc/htpasswd kerry

    clip_image022

    这样就在/usr/local/nagios/etc 目录下创建了一个htpasswd 验证文件,当通过http://192.168.xx.xxx/nagios/访问时就需要输入用户名和密码了。当然验证文件的密码是加密过的,如下所示:

    [root@getlnx05 conf]# cat /usr/local/nagios/etc/htpasswd

    kerry:$apr1$H1bHFvhH$q.bsSARuh4Ns2Z5G9hmQN.

    [root@getlnx05 conf]#

    image

    Step 3:重启Apache服务

    [root@getlnx05 conf]# /usr/local/apache/bin/apachectl restart

    AH00526: Syntax error on line 515 of /usr/local/apache/conf/httpd.conf:

    AuthUserFile takes one argument, text file containing user IDs and passwords

    [root@getlnx05 conf]#

    用vi打开/usr/local/apache/conf/httpd.conf文件,定位到515行(下面红色的哪一行),后面的哪一行汉字注释变成导致,如下图所示:

    Code Snippet
    1. #setting for nagios
    2.  
    3. ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
    4.  
    5. <Directory "/usr/local/nagios/sbin">
    6.  
    7. AuthType Basic
    8.  
    9. Options ExecCGI
    10.  
    11. AllowOverride None
    12.  
    13. Order allow,deny
    14.  
    15. Allow from all
    16.  
    17. AuthName "Nagios Access"
    18.  
    19. AuthUserFile /usr/local/nagios/etc/htpasswd //用于此目录访问身份验证的文件
    20.  
    21. Require valid-user
    22.  
    23. </Directory>
    24.  
    25. Alias /nagios "/usr/local/nagios/share"
    26.  
    27. <Directory "/usr/local/nagios/share">
    28.  
    29. AuthType Basic
    30.  
    31. Options None
    32.  
    33. AllowOverride None
    34.  
    35. Order allow,deny
    36.  
    37. Allow from all
    38.  
    39. AuthName "nagios Access"
    40.  
    41. AuthUserFile /usr/local/nagios/etc/htpasswd
    42.  
    43. Require valid-user
    44.  
    45. </Directory>

    clip_image024

    将这一行注释清除后,重启Apache服务,OK,问题解决,打开http://192.168.7.223/nagios/进入网站,点击其它页面发现乱码,这是因为Apache没有开启cgi脚本的缘故。进入apache的主配置文件httpd.conf将#LoadModule cgid_module modules/mod_cgid.so前的注释符号去掉,重启Apache服务即可解决问题

    clip_image026

    参考资料:

    http://www.cnblogs.com/mchina/archive/2013/02/20/2883404.html

    作者:潇湘隐者

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接.
     
     
  • 相关阅读:
    php的语句
    php
    git分支
    git安装及git命令的用法
    git命令
    dos命令及github介绍
    无缝轮播的案例 及css3无缝轮播案例
    ACWING 031 表示数值的字符串
    Acwing 282. 石子合并 区间dp
    Leetcode 841. 钥匙和房间 dfs bfs
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3267301.html
Copyright © 2020-2023  润新知