如何解决java中用于burp扩展的嵌套拆分窗格
我正在尝试将新创建的 Burp 选项卡的窗口分成不同的部分;
source .vimrc
但我只看到左边的部分。这怎么可能,我应该怎么做?
|-------|--|
| | |
|-------| |
|-------|--|
我的最终目标是在右侧创建一个导出按钮(我假设首先使用 JPanel)。我使用的语言是Java。当前,我正在使用 IHttpListener,但也许我会实现 IScannerCheck 以使用被动扫描的结果填充 TableModel。
编辑(根据互联网上的示例尝试使其工作超过 8 小时后):
public class BurpExtender extends AbstractTableModel implements IBurpExtender,ITab,IHttpListener,IMessageEditorController
{
private IBurpExtenderCallbacks callbacks;
private IExtensionHelpers helpers;
private JSplitPane splitPane;
private JSplitPane splitPane2;
private IMessageEditor requestViewer;
private IMessageEditor responseViewer;
private final List<LogEntry> log = new ArrayList<LogEntry>();
private IHttpRequestResponse currentlydisplayeditem;
//
// implement IBurpExtender
//
@Override
public void registerExtenderCallbacks(final IBurpExtenderCallbacks callbacks)
{
// keep a reference to our callbacks object
this.callbacks = callbacks;
// obtain an extension helpers object
helpers = callbacks.getHelpers();
// set our extension name
callbacks.setExtensionName("Logger");
// create our UI
SwingUtilities.invokelater(new Runnable()
{
@Override
public void run()
{
splitPane2 = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
splitPane2.setDividerLocation(0.5);
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
// main split pane
splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
// table of log entries
Table logTable = new Table(BurpExtender.this);
JScrollPane scrollPane = new JScrollPane(logTable);
splitPane.setLeftComponent(scrollPane);
// tabs with request/response viewers
JTabbedPane tabs = new JTabbedPane();
requestViewer = callbacks.createMessageEditor(BurpExtender.this,false);
responseViewer = callbacks.createMessageEditor(BurpExtender.this,false);
tabs.addTab("Request",requestViewer.getComponent());
tabs.addTab("Response",responseViewer.getComponent());
splitPane.setRightComponent(tabs);
splitPane2.setLeftComponent(splitPane);
splitPane2.setRightComponent(panel);
// customize our UI components
callbacks.customizeUiComponent(splitPane);
callbacks.customizeUiComponent(panel);
callbacks.customizeUiComponent(splitPane2);
callbacks.customizeUiComponent(logTable);
callbacks.customizeUiComponent(scrollPane);
callbacks.customizeUiComponent(tabs);
// add the custom tab to Burp's UI
callbacks.addSuiteTab(BurpExtender.this);
// register ourselves as an HTTP listener
callbacks.registerHttpListener(BurpExtender.this);
}
});
}
我将 splitPane 更改为 splitPane2,现在它似乎可以工作了。如果有人对为什么需要这样做有任何建议或其他建议(例如从我这边实现按钮或错误的假设/代码),我想听听。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。